Junior — Middle
Můžete vysvětlit princip fungování cyklu zpracování událostí v asynchronních systémech?
sobes.tech AI
Odpověď od AI
Event loop (událková smyčka) v asynchronních systémech, jako je Node.js, je zodpovědná za správu provádění asynchronních operací bez blokování hlavního vlákna.
Princip fungování:
- Všechny operace, které vyžadují čas (například čtení souborů, síťové požadavky), jsou odeslány do fronty událostí.
- Událková smyčka tuto frontu neustále kontroluje a když operace skončí, zavolá odpovídající callback nebo obslužnou funkci.
- Hlavní vlákno není blokováno, pokračuje ve vykonávání dalšího kódu, dokud se neobjeví dokončené události.
To umožňuje efektivně využívat zdroje a zpracovávat mnoho operací paralelně, navzdory jednovláknové povaze Node.js.
Příklad:
console.log('Začátek');
setTimeout(() => {
console.log('Asynchronní událost');
}, 1000);
console.log('Konec');
Výstup bude:
Začátek
Konec
Asynchronní událost
Protože setTimeout umisťuje funkci do fronty událostí a událková smyčka ji později zavolá.