Junior — Middle
Siz asinxron tizimlarda voqealar ishlash tsiklining ishlash prinsipi haqida tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Node.js kabi asinxron tizimlarda voqealar tsikli (event loop) asosiy oqimni bloklamasdan asinxron operatsiyalarni boshqarish uchun javobgardir.
Ishlash prinsipi:
- Vaqt talab qiladigan barcha operatsiyalar (masalan, fayl o'qish, tarmoq so'rovlar) voqealar navbatiga yuboriladi.
- Voqealar tsikli bu navbatni doim tekshiradi va operatsiya tugagach, mos callback yoki ishlovchini chaqiradi.
- Asosiy oqim bloklanmaydi, u keyingi kodni bajarishda davom etadi, to'g'ri tugagan voqealar paydo bo'lgunga qadar.
Bu resurslardan samarali foydalanishga va Node.js ning yagona oqimli tabiatiga qaramay, ko'plab operatsiyalarni parallel ravishda ishlashga imkon beradi.
Misol:
console.log('Boshlanish');
setTimeout(() => {
console.log('Asinxron voqea');
}, 1000);
console.log('Yakuni');
Natija quyidagicha bo'ladi:
Boshlanish
Yakuni
Asinxron voqea
Chunki setTimeout funksiyasini voqealar navbatiga qo'yadi va voqealar tsikli uni keyin chaqiradi.