国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

html5 - Javascript單線程中消息隊(duì)列的執(zhí)行疑問

瀏覽:143日期:2023-01-03 15:44:09

問題描述

陸陸續(xù)續(xù)看了一些js單線程,事件循環(huán)和消息隊(duì)列的文章,但是有一個疑問是,當(dāng)event loop消息隊(duì)列的時候,假設(shè)里面有ajax和settimeout兩個消息,當(dāng)?shù)莝ettimeout是先進(jìn)入消息隊(duì)列,ajax是后入,但是ajax先回饋結(jié)果了,settimout還沒有,這個時候,event loop應(yīng)該是先執(zhí)行ajax吧?其實(shí)結(jié)合日常開發(fā)我也知道應(yīng)該是這么回事,但是我看一些文章好像說異步消息隊(duì)列也是按順序輪詢執(zhí)行的,但是明明后面的比你先反饋,應(yīng)該是先執(zhí)行對把?

問題解答

回答1:

ajax執(zhí)行完,剩余事件進(jìn)入 event loop. setTimeout 在延遲的時間結(jié)束時,將參數(shù)里的回掉放入event loop。

推薦你一個網(wǎng)站,在線掩飾event loophttp://latentflip.com/loupe

回答2:

這個問題, 說起來比較長, 這里有篇文章, 很長但是建議深讀. Ajax知識體系大梳理 | louis blog當(dāng)然sf的專欄也是有的: Ajax知識體系大梳理 - 路易斯聊前端如果有不明白的地方, 直接文章底下給我留言就行.

回答3:

按照我這兩天看的情況,異步任務(wù)只有在完成相關(guān)觸發(fā)條件才會被推入“任務(wù)隊(duì)列”,等待主線程執(zhí)行完同步任務(wù)按照先進(jìn)先出的順序執(zhí)行“任務(wù)隊(duì)列”中的任務(wù)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 太保市| 南岸区| 梨树县| 宾川县| 梅河口市| 上虞市| 中卫市| 斗六市| 宁安市| 武威市| 万州区| 澜沧| 汝南县| 长阳| 修武县| 临高县| 禹州市| 耒阳市| 隆尧县| 顺义区| 宝山区| 二手房| 石城县| 包头市| 宜川县| 扶绥县| 家居| 芜湖市| 福贡县| 玉田县| 名山县| 合水县| 大新县| 台南县| 连城县| 衡阳市| 长乐市| 清丰县| 德阳市| 沙河市| 乌恰县|