关于异步timeout问题

来源:3-2 Koa异步async

Harrymissu

2019-01-26

老师你好, 我对异步的timeout那里还是有点不明白。
a的setTimeout是1s, c的setTimeout是2s, 异步的原理是不阻碍其他进程, 那么c为啥要等a的那1s执行完后才开始?
我最开始的猜想是这个异步程序是2s的运行时间,但是结果是3s, 老师能解释下吗

写回答

1回答

快乐动起来呀

2019-01-28

你对这块理解有问题,异步指的是不影响主线程,因为js是单线程的。遇到异步任务都会放到异步任务队列中,等待主线程执行完才会去执行异步任务,关于异步执行顺序,既要看进去队列的顺序,还要看定时器,还要看优先级

0
1
Harrymissu
非常感谢!
2019-01-28
共1条回复

Vue全家桶+SSR+Koa2全栈开发美团网

整合大前端8项技术,全面晋级全栈工程师,毕设/面试作品

2445 学习 · 1638 问题

查看课程