Event Loop, JavaScript'in asenkron işlemleri yönetmek ve kodu verimli bir şekilde çalıştırmak için kullandığı bir mekanizmadır 24.
Çalışma prensibi şu şekilde özetlenebilir:
- Çağrı Yığını (Call Stack): JavaScript motoru, fonksiyon çağrılarını takip eder ve bir fonksiyon çağrıldığında onu yığına ekler, tamamlandığında ise yığından çıkarır 24.
- Olay Kuyruğu (Event Queue): Zaman aşımları, I/O işlemleri ve promises gibi asenkron işlemler bu kuyruğa eklenir 4.
- Event Loop: Bu döngü, çağrı yığınının boş olup olmadığını ve olay kuyruğunda işlenmeyi bekleyen bir şey olup olmadığını sürekli olarak kontrol eder 24.
- İşlem: Eğer çağrı yığını boşsa, olay kuyruğundaki ilk görev alınır ve çağrı yığınına eklenerek çalıştırılır 4.
- Tekrar: Bu süreç, kuyrukta daha fazla görev olana kadar tekrar eder 4.
5 kaynaktan alınan bilgiyle göre: