「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JavaScriptイベントループメカニズムとルールの詳細な説明

JavaScriptイベントループメカニズムとルールの詳細な説明

2025-04-29に投稿されました
ブラウズ:647

Detailed explanation of Javascript event loop rules

はよく知られているように、Javacriptは単一のスレッド言語ですが、なぜ非同期操作を使用できるのですか?非同期操作は、マルチスレッドおよびマルチプロセス機能を備えたブラウザによって実行されるためです。 JavaScriptは常に単一のスレッドで実行され、非同期コードが明らかになったときに実行のためにブラウザに引​​き渡されます。ブラウザは、これらの非同期オペティションを処理するために、HTTPリクエスト、GUI、イベントトリガーなどを含む対応するスレッドまたはプロセスを呼び出します。

一般的に言えば、JavasCtipタスクは、同期タスク、マイクロタスク、およびマクロタスクの3つのカテゴリに分割できます。同期コードが最初に実行され、次に、ブラウザはマイクロコードをマイクロタスクに配置して、同期タスクを完了するためにワーティングを配置し、マクロコードをマクロタスクのキューに入れてマイクロコードが完了するようにします。

この優先順序は、OSのmutil-revelフィードバックキュースケジューリングアルゴリズムに似ています。

共通マイクロタスク:promise.then()、promise.catch()、new Mutationobserver()、process.nexttick()

一般的なマクロタスク:setimeout、setInterview、requestAnimationFrame()

ちなみに、process.nexttick()はマイクロタスクでもマクロタスクでも、単に同期コードとマイクロタスクの前に実行されます。

リリースステートメント この記事は、https://dev.to/tanjiagang/detailed-explanation-of-javascript-event-loop-rules-156d?1に再現されています。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3