Sobes.tech
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:

  1. Vaqt talab qiladigan barcha operatsiyalar (masalan, fayl o'qish, tarmoq so'rovlar) voqealar navbatiga yuboriladi.
  2. Voqealar tsikli bu navbatni doim tekshiradi va operatsiya tugagach, mos callback yoki ishlovchini chaqiradi.
  3. 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.