Junior — Middle
Node.js-də Event Loop-un işləmə prinsipi və onun vəzifələrin asinxron işlənməsində rolu haqqında izah edə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
Node.js-də Event Loop, əsas icra axını bloklamadan asinxron kodun icrasına imkan verən mexanizmdir. Node.js tək bir iş parçacığında işləyir, lakin Event Loop sayəsində çoxsaylı giriş-çıxış əməliyyatlarını paralel şəkildə işləyə bilər.
İş prinsipi:
- Asinxron əməliyyat başladıqda (məsələn, fayl oxuma və ya verilənlər bazasına sorğu göndərmək), bu, müvafiq sistem API-ya və ya növbəyə göndərilir.
- Event Loop bu əməliyyatları izləyir və tamamlandıqda callback-ləri tapşırıq növbəsinə yerləşdirir.
- Əsas iş parçacığı bu callback-ləri ardıcıllıqla işləyərək çağırır.
Beləliklə, Event Loop tapşırıqların bloklamadan işlənməsini təmin edir və Node.js-in çoxsaylı əməliyyatlarla səmərəli işləməsinə imkan verir.
Nümunə:
console.log('Start');
setTimeout(() => {
console.log('Timeout callback');
}, 0);
console.log('End');
// Nəticə:
// Start
// End
// Timeout callback