你不知道的js
js引擎线程和GUI线程互斥
js可以操作DOM元素,进而会影响到GUI的渲染结果。因此JS引擎线程与GUI渲染线程是互斥的。也就是说当JS引擎线程处于运行状态时GUI渲染线程处于冻结状态;
js执行机制-单线程
单线程:同一时间只能做一件事
js执行机智
同步和异步任务分别进入不同的执行场所,同步的进入主线程,异步的进入Event Table 并注册函数。
当指定时间完成时,Event Table会将这个函数移入Event Queue
主线程的任务执行完毕为空,会去Event Queue读取对应函数,进入主线程执行。
上述过程会不断重复,也就是常说的Event Loop(事件循环)