JS 事件循环机制(微任务、宏任务)
JS 事件循环机制
JS 是单线程的,在 JS 中任务分为同步任务和异步任务。
如果是同步任务,则会在主线程(也就是 JS 引擎线程)上进行执行,形成一个执行栈。一旦遇到异步任务,则会将这些异步任务交给异步模块去处理,然后主线程继续执行后面的同步代码。
当异步任务有了运行结果以后,就会放入任务队列中,等待被执行。
一旦执行栈中的所有同步任务执行完毕,代表当前主线程空闲了,系统就会读取任务队列,将可以运行的异步任务添加到执行栈中执行。
JS 是单线程的,在 JS 中任务分为同步任务和异步任务。
如果是同步任务,则会在主线程(也就是 JS 引擎线程)上进行执行,形成一个执行栈。一旦遇到异步任务,则会将这些异步任务交给异步模块去处理,然后主线程继续执行后面的同步代码。
当异步任务有了运行结果以后,就会放入任务队列中,等待被执行。
一旦执行栈中的所有同步任务执行完毕,代表当前主线程空闲了,系统就会读取任务队列,将可以运行的异步任务添加到执行栈中执行。