生成器VS协程
生成器函数是带有星号的函数,可以暂停和恢复执行
生成器函数的使用方法:
- 当遇到yield关键字的时候,交出函数的执行权
- 外部函数使用next恢复函数的执行
协程
协程可以看作是线程上的任务,线程上同时只能执行一个协程,比如当前执行的协程是A协程,要启动B协程,A协程就必须让出线程控制权给B协程,这样A协程就暂停执行,B协程恢复执行,这时A协程叫做B协程的父协程,协程切换不像线程切换那么消耗资源
async/await
1.async
异步执行和隐式返回Promise
Promise微任务