久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

html5 - Javascript單線程中消息隊列的執行疑問

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

問題描述

陸陸續續看了一些js單線程,事件循環和消息隊列的文章,但是有一個疑問是,當event loop消息隊列的時候,假設里面有ajax和settimeout兩個消息,當但是settimeout是先進入消息隊列,ajax是后入,但是ajax先回饋結果了,settimout還沒有,這個時候,event loop應該是先執行ajax吧?其實結合日常開發我也知道應該是這么回事,但是我看一些文章好像說異步消息隊列也是按順序輪詢執行的,但是明明后面的比你先反饋,應該是先執行對把?

問題解答

回答1:

ajax執行完,剩余事件進入 event loop. setTimeout 在延遲的時間結束時,將參數里的回掉放入event loop。

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

回答2:

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

回答3:

按照我這兩天看的情況,異步任務只有在完成相關觸發條件才會被推入“任務隊列”,等待主線程執行完同步任務按照先進先出的順序執行“任務隊列”中的任務。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 满城县| 麻江县| 定陶县| 周至县| 连南| 巩留县| 尼勒克县| 伊宁市| 漯河市| 将乐县| 赤壁市| 平舆县| 曲水县| 霍邱县| 罗定市| 忻城县| 吐鲁番市| 尼木县| 乐清市| 贵阳市| 沧源| 茂名市| 上犹县| 石楼县| 长春市| 法库县| 扎囊县| 安丘市| 城口县| 调兵山市| 西华县| 安丘市| 个旧市| 芜湖县| 应用必备| 滦平县| 台州市| 名山县| 尼玛县| 灵寿县| 罗源县|