フロントエンド非同期プロセス
3548 ワード
フロントエンドの非同期プロセス(重要)従来の原生非同期 コールバック関数 イベント 非同期プロセスツール(他の人がカプセル化したもの)を使用する es6 Promise es 6 generator関数 es 6(7)async関数 node.jsのnextTick setImmudiate サードパーティのasync.jsライブラリ
まとめ:非同期プロセスのタスクは非同期キューに配置され、非同期キューはメインスレッドの実行が完了した後にのみ実行されます.参考資料 Promise https://blog.csdn.net/MrJavaweb/article/details/79475949 Generator https://www.cnblogs.com/imwtr/p/5913294.html Async-await Node.jsのnextTick()とsetimmediate()https://www.cnblogs.com/5ishare/p/5268273.html asyncライブラリhttps://caolan.github.io/async/
参考文献Event-loophttp://www.ruanyifeng.com/blog/2014/10/event-loop.html?bsh_bid=983729729史上最も読みやすいPromise/A+完全実現https://zhuanlan.zhihu.com/p/21834559
Promise , – -- 。 ,ES6 , , Promise
Promise , , ( ) 。 ,Promise , 。
Promise
:
pending:
fulfilled :
rejected
:
Promise , :
pending fulfilled
pending rejected。
, , , resolved( )
nextTick() setImmediate();
process.nextTick() idle ,setImmediate() check . ,idle I/O ,I/O check .
,process.nextTick() ,
setImmediate() .
,process.nextTick() .
setImmediate() .
nextTick > > setImmediate
まとめ:非同期プロセスのタスクは非同期キューに配置され、非同期キューはメインスレッドの実行が完了した後にのみ実行されます.参考資料
参考文献Event-loophttp://www.ruanyifeng.com/blog/2014/10/event-loop.html?bsh_bid=983729729史上最も読みやすいPromise/A+完全実現https://zhuanlan.zhihu.com/p/21834559