今回はイベントループの使い方と、イベントループを使用する際の注意点を紹介します。実際の事例を見てみましょう。
インタビュー中にこの質問をされたとき、私は混乱して全く答えられませんでしたが、戻って調べてみると、とても不思議に思えました。強力な名前は非同期およびシングルスレッドの知識に関するもので、私の気分はまた非常に複雑になりました。これがそのような高度な名前であることを知らなかったのは私が悪かったです。
実際、これは非常に単純です。まず、js はシングルスレッド言語です。「js は 2 つのことを同時に実行できません。」という一文で明確に説明できます。時間がある場合は、それらを 1 つずつ順番に実行することしかできません。
「最初に同期、次に非同期」という順序は比較的理解しやすいです。js がコードを実行すると、上から下に向かって実行され、同期イベントであることが判明した場合はすぐに実行されます。同期イベントであることが判明した場合は、本質的に非同期イベントである限り、0 秒または 10 秒の遅延に関係なく、すぐに実行されます。イベントキュー に入れられて待機します。実行スタック (つまり、メインスレッド内のすべての同期イベントを格納するもの) での同期 イベント処理 が完了すると、メインスレッドはイベント キュー に継続的にアクセスし、イベント キュー が存在するかどうかをクエリ し始めます。実行のためにプルオーバーできるイベント。 (注: 同期イベントの処理が終了した直後、非同期キューに遅延関数がある場合、それらは同時にタイミングを開始します)。
そしてこのメインスレッドループがイベントキューからイベントを継続的に取得する処理をイベントループと呼びます。
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨書籍:
フレックスレイアウトの使用
有名なWebサイトのフロントエンドレイアウトの分析
以上がイベントループの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。