JavaScript’te event loop nasıl çalışır?
JavaScript'nde Event Loop
JavaScript, tek iş parçacıklı bir dil olduğundan, aynı anda yalnızca bir işlem gerçekleştirebilir. Event loop, asenkron işlemleri yönetmek için kullanılan bir mekanizmadır.Çalışma Prensibi
JavaScript'te event loop şu şekilde çalışır:- Call Stack: İşlem sırası, iş parçacığında izlenir. Fonksiyonlar buraya eklenir ve tamamlandıkça çıkarılır.
- Web APIs: Asenkron işlemler (örneğin, setTimeout, AJAX) burada işlenir. İşlemler tamamlandığında callback fonksiyonları işleme alınmak üzere kuyruklanır.
- Callback Queue: Web APIs'den dönen callback fonksiyonları buraya eklenir. Call stack boşaldığında buradan alınarak işlenir.
- Event Loop: Call stack ve callback queue arasında sürekli bir döngü oluşturarak, call stack boşsa callback queue'dan bir fonksiyon alır ve çalıştırır.
Örnek Senaryo
1. Bir fonksiyon çağrılır ve call stack'e eklenir. 2. Fonksiyon içinde bir asenkron işlem (örneğin setTimeout) başlatılır. 3. Asenkron işlem tamamlandığında, ilgili callback fonksiyonu callback queue'ya eklenir. 4. Call stack boşaldığında, event loop callback queue'dan bir fonksiyonu alıp call stack'e ekler ve çalıştırır. Bu döngü sürekli olarak devam eder ve JavaScript programlarının asenkron olarak çalışmasını sağlar.
Cevap yazmak için lütfen
.
Aynı kategoriden
- Web erişilebilirliği (a11y) için temel gereksinimler nelerdir?
- Python’da bir string’in belirli bir karakteri kaç defa geçtiğini nasıl bulabilirim?
- En İyi Taşınabilir İşletim Sistemi Hangisidir?
- WebSocket nedir? Ne zaman kullanılmalı?
- SLA, SLO ve SLI kavramları nedir?
- Yazılım geliştirme sürecinde testler nasıl planlanmalıdır?
- Machine learning modellerinde regularization teknikleri nasıl uygulanır?
- C programlama dilinde switch–case yapısı nasıl kullanılır?
- Veri tabanı tasarımında hangi ilişki türü en yaygın olarak kullanılır?
- Mühendislikte en çok tercih edilen programlama dilleri hangileridir ve neden?
- Python’da bir stringin içinde belirli bir karakterin kaç adet olduğunu nasıl bulurum?
- Python’da bir stringin içinde belirli bir kelimenin kaç farklı yerde geçtiğini nasıl bulabilirim?
- Python programlama dilinde if ve else ifadeleri nasıl kullanılır?
- Python’da Bir Liste Üzerinde İterasyon Nasıl Yapılır?
- Programlama öğrenmeye başlamadan önce hangi temel kavramları anlamak önemlidir?
- Fibonacci dizisindeki herhangi bir sayıyı bulmak için en etkili algoritma hangisidir?
- Code review yaparken nelere dikkat etmeliyim?
- Mühendislik öğrencilerine en çok fayda sağlayan programlama dili hangisidir?
- Python’da Temel Veri Tipleri Nelerdir?
- Mühendislik öğrencileri için en iyi programlama dilini nasıl belirleyebilirim?