ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript はシングルスレッド環境で非同期 AJAX 応答をどのように管理しますか?
JavaScript はバックグラウンドで AJAX 応答をどのように処理しますか?
JavaScript が単一スレッドで実行されている間、AJAX 要求はバックグラウンドで処理されます。ここでは、発生するイベントについてさらに詳しく説明します。
イベント キューと処理
表面下では、JavaScript はイベント キューを維持します。 JavaScript 実行スレッドが完了すると、キューに追加のイベントがないか調べます。存在する場合、スレッドはキューから削除され、トリガーされます (マウスのクリックなど)。
AJAX 応答とイベントの作成
AJAX 応答が受信すると、基礎となるネイティブ コード ネットワーキングがそれを認識します。その結果、イベントが JavaScript イベント キューに追加されます。実装は、ネイティブ コードが AJAX 呼び出しの完了をどのように検出するかを決定します (通常はスレッドまたはイベント駆動メカニズムを介して)。
イベント処理
JavaScript が現在機能していない場合実行すると、イベントがすぐにアクティブ化され、AJAX 応答ハンドラーが呼び出されます。それ以外の場合、イベントは現在の JavaScript スレッドが完了した後に処理されます。これにより、JavaScript が更新を継続的にポーリングする必要がなくなります。
シングルスレッド実行
すべての外部イベントがイベント キューに入り、JavaScript が実行された場合にのみイベントがトリガーされるためです。が実行されていない場合、エンジンはシングルスレッドの性質を維持します。 JavaScript スレッドが終了するとすぐに、エンジンはイベント キューに保留中のイベントがないかチェックし、必要に応じてイベントをトリガーします。これにより、中断のない実行が保証されます。
追加リソース
さらに詳しく読むには、次の記事とプレゼンテーションを参照してください。
以上がJavaScript はシングルスレッド環境で非同期 AJAX 応答をどのように管理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。