2016-08-23 5 views
-1

私は、イベントループが定期的に実行され、ブラウザからのイベントがないかどうかをチェックし、タスクキューをチェックすることを理解しています。しかし、これはどのくらいの頻度で起こりますか?設定された間隔はありますか?イベントループはどのくらいの頻度でブラウザで実行されますか?

JavaScriptがシングルスレッドであるが、非同期コード(最小限のブロッキング)でイベントループが実行される頻度が高いため、ウェブページのブロックコードがイベントループをブロックすることは分かっていますか?

+0

なぜdownvotes? – BugHunterUK

+0

私はそうではありませんでしたが、おそらくあなたが解決しようとしている問題、使用したコード、入手したエラーメッセージは何かを述べなければならないからです。 –

+0

なぜこれを知りたいですか?簡単なテスト(keypress-> event-> sthしている)で見ることができるように、ブラウザは非常に速く実行されます。 –

答えて

-4

イベントスレッドは、間隔ではなく、キーイベントやマウスイベントなどのイベントをイベントに追加するOSからの信号、または独自のコード(XHRやsetTimeoutなど)のコールバックによってトリガーされます。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop#Event_loop

を参照してくださいメインスレッドが間で共有されています

  • UIレイアウト
  • JSの実行

eventが発生するたびに(XHRコールバックを、ハンドラをクリックし、setTimeoutをコールバック...)、 JSが実行されますが、JSの実行が終了するまでUIは更新されません。

他のスレッド、WebWorkersを使用する方法があり、そのコードはDOMにアクセスできないため、スレッドセーフで無限に実行できます。

windowオブジェクトには別のスレッドがあります。

+0

質問仲間にはお答えしません。私が求めているのは、イベントループ、つまりブラウザが実装するイベントループで、タスクキューからデータを取得します。このイベントループがどの間隔で実行されているかです。 – BugHunterUK

+0

ブラウザがメッセージキューをチェックする頻度はどのくらいですか? –

+0

私は自分のOPが十分にはっきりしていないことを再開しましたhttp://stackoverflow.com/questions/39109205/javascript-internals-at-what-interval-does-the-event-loop-run?noredirect=1#コメント65566030_39109205 – BugHunterUK

関連する問題