Home

händelseloop

Händelseloop, ofta betecknad som event loop, är en central mekanism i många körmiljöer som stöder asynkron programmering. Den koordinerar exekveringen av synkron och asynkron kod genom att övervaka call stacken och köerna som håller väntande callbacks. I webbläsare och i Node.js används händelseloopen för att uppnå icke-blockerande I/O och responsiva program.

Huvudkomponenterna är call stack, en kö för makro‑uppgifter (macrotasks) och en kö för mikrotasks. När kod körs

Användningsområden och betydelse: Händelseloopen gör det möjligt att skriva asynkron kod som ser ut och uppför

placeras
funktioner
på
stacken;
när
stacken
är
tom
hämtas
nästa
uppgift
från
macrotask‑kön
och
körs.
Efter
varje
körd
uppgift
behandlas
i
allmänhet
mikrotasks
innan
rendering,
vilket
innebär
att
nyare
arbete
som
beräknats
via
Promise‑baserade
callbacks
ofta
utförs
snabbare.
I
olika
miljöer
kan
händelseloopen
ha
något
olika
faser
eller
prioriteringar,
men
kärnan
är
densamma:
en
huvudloop
som
fortsätter
köra
tills
det
inte
finns
fler
uppgifter.
sig
som
synkron
kod,
samtidigt
som
I/O
och
långsamma
operationer
inte
blockerar
programmets
övriga
arbete.
Begränsningar
inkluderar
att
endast
en
tråd
kör
JavaScript
i
taget,
vilket
kan
leda
till
blockering
vid
tung
beräkning.
Detta
motverkas
ofta
genom
arbetsdelning
(till
exempel
worker
threads),
asynkrona
API:er
och
uppdelning
av
tunga
uppgifter.