- 同步使命指的是,在主线程上列队实行的使命,只需前一个使命实行终了,才实行后一个使命;
- 异步使命指的是,不进入主线程、而进入”使命行列”(task queue)的使命,只需”使命行列”关照主线程,某个异步使命能够实行了,该使命才会进入主线程实行。
- 一切同步使命都在主线程上实行,构成一个实行栈(execution context stack)。
- 主线程以外,还存在一个”使命行列”(task queue)。只需异步使命有了运转效果,就在”使命行列”当中安排一个事宜。
- 一旦”实行栈”中的一切同步使命实行终了,体系就会读取”使命行列”,看看内里有哪些事宜。那些对应的异步使命,因而完毕守候状况,进入实行栈,最先实行。
- 主线程不停反复上面的第三步。
参考阮一峰先生的JavaScript 运转机制详解:再谈Event Loop