国产毛多水多高潮高清,久热这里只有精品视频6,国内精品久久久久久久久电影网,国产男同志CHINA69,精品999日本久久久影院,人人妻人人澡人人爽人人精品,亚洲中文无码永久免

js Event Loop 事件循环-E星体育APP游戏

js Event Loop 事件循环

2026-01-17 10:23:20投稿人:俄羅斯世界杯買球(福建)有限公司圍觀3163 評論

js Event Loop 事件循環(huán)

來源:Loong Panda


概念

Event Loop即事件循環(huán),是解決javaScript單線程運(yùn)行阻塞的一種機(jī)制 。 主要是為了協(xié)調(diào)單線程下,事件、用戶交互  、腳本、UI 渲染和網(wǎng)絡(luò)處理等行為,防止主線程的不阻塞。

因?yàn)镴avaScript 是單線程,也就是說,所有任務(wù)需要排隊(duì)  ,前一個任務(wù)結(jié)束,才會執(zhí)行后一個任務(wù)  。

但是IO設(shè)備(輸入 、出設(shè)備)可能會因?yàn)榫W(wǎng)絡(luò)等因數(shù)導(dǎo)致速度很慢(比如Ajax)繼而CPU沒有充分利用,所以設(shè)計(jì)者將IO設(shè)備的任務(wù)掛起,先執(zhí)行后面的任務(wù) ,等到IO設(shè)備返回了結(jié)果,再回過頭,把掛起的任務(wù)繼續(xù)執(zhí)行下去 。于是,就把所有任務(wù)分成兩種,一種是同步任務(wù)(synchronous),另一種是異步任務(wù)(asynchronous)。


同步任務(wù):

只有前一個任務(wù)執(zhí)行完畢,才能執(zhí)行后一個任務(wù);直接在主線程上排隊(duì)執(zhí)行且最先執(zhí)行,形成一個執(zhí)行棧


異步任務(wù) :

不進(jìn)入主線程、而是進(jìn)入"任務(wù)隊(duì)列"(task queue)的任務(wù),只有"任務(wù)隊(duì)列"通知主線程 ,某個異步任務(wù)可以執(zhí)行了 ,該任務(wù)才會進(jìn)入主線程執(zhí)行