17.非同期プログラミング(Event Loop)
6353 ワード
📌 17-1活動サイクルは?
イベントループは、JavaScriptエンジンがコードを解析し、実行する一連のプロセスです.
🧩 JavaScriptエンジンの機能
📌 17-2イベントリングのコンポーネント
写真ソース
📌 17-3非同期処理
テクニカルキューで待機し、Callスタックに入って実行します.マイクロテクノロジーもありますが、必ずしも形式的に区分する必要はありません.
💡 マイクロテクノロジーはPromisなどの非同期機でも優先順位で区切られているが,比較する必要はない.どうせ非同期通信は主に同期制御に用いられる.優先度は重要ではないからだ.
🧩 非同期処理のタスクタイプ
// 각각의 함수들을 정의
const func1 = () => console.log('1');
const func2 = () => console.log('2');
// setTimeOut를 return하는 비동기 코드
const func3 = () => setTimeout(() => console.log('3'), 2000);
/*
결과 :
1
2
3
*/
func3();
func1();
func2();
// 각각의 함수들을 정의
const func1 = () => console.log('1');
const func2 = () => console.log('2');
// setTimeOut를 return하는 비동기 코드
const func3 = () => setTimeout(() => console.log('3'), 0);
/*
결과 :
1
2
3
*/
func3();
func1();
func2();
🔥 最後に表示されるコードではsettimeoutのタイマが0であっても後で出力されます.関数自体が非同期で実行されるためです.Reference
この問題について(17.非同期プログラミング(Event Loop)), 我々は、より多くの情報をここで見つけました https://velog.io/@yhj96/17.-비동기-프로그래밍-Event-Loopテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol