JS異步機制

JS異步機制

主線程、執行棧、任務隊列

  1. 主線程不斷讀取執行棧中的同步事件,直到執行棧空
  2. 異步任務結束放入任務隊列,執行棧空時主線程讀取任務隊列
  3. 任務隊列讀取完畢,回到步驟1

宏任務與微任務

宏任務:script(整體代碼)、setTimeout、setInterval、UI 渲染、 I/O、postMessage、 MessageChannel、setImmediate(Node.js 環境)
微任務:Promise、 MutaionObserver、process.nextTick(Node.js環境)

  1. 主線程先執行宏任務,產生的異步任務完成後放入任務隊列
  2. 宏任務完成後主線程執行微任務,完成後回到步驟1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章