Sobes.tech
Junior — Middle

Eşzamansız sistemlerde olay işleme döngüsünün çalışma prensibini açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Node.js gibi asenkron sistemlerdeki olay döngüsü (event loop), ana akışın engellenmeden asenkron işlemlerin yürütülmesini yönetmekle sorumludur.

Çalışma prensibi:

  1. Zaman alan tüm işlemler (örneğin, dosya okuma, ağ isteği) olay kuyruğuna gönderilir.
  2. Olay döngüsü bu kuyruğu sürekli kontrol eder ve işlem tamamlandığında ilgili callback veya işleyiciyi çağırır.
  3. Ana akış engellenmez, tamamlanan olaylar ortaya çıkana kadar bir sonraki kodu yürütmeye devam eder.

Bu, kaynakların verimli kullanılmasını ve Node.js'in tek iş parçacıklı doğasına rağmen çok sayıda işlemi paralel olarak işlemesini sağlar.

Örnek:

console.log('Başlangıç');
setTimeout(() => {
  console.log('Asenkron olay');
}, 1000);
console.log('Son');

Çıktı şu şekilde olur:

Başlangıç
Son
Asenkron olay

Çünkü setTimeout fonksiyonunu olay kuyruğuna koyar ve olay döngüsü bunu daha sonra çağırır.