2012-04-03 25 views
0

ための「スクリプトの実行」時間の範囲はどのようなものです。私は<strong>Dom.max_script_run_time</strong></p> <p><a href="http://kb.mozillazine.org/Dom.max_script_run_time" rel="nofollow">http://kb.mozillazine.org/Dom.max_script_run_time</a></p> <p>、デフォルトは10秒に設定されているためFirefoxの構成設定を読んでいるdom.max_script_run_time

私のajaxタイムアウトも10秒に設定されています。

xmlhttpリクエストを送信してから応答が返るまで、ajaxタイムアウトカウントが始まることを理解しています。

Firefox Dom.max_script_run_timeに応答待ちのajaxが含まれているかどうかはわかりません。例えば

:Ajaxが別のスレッドであるため、

1. user click on the button on the web page. 

2. onclick event is triggered (Dom.max_script_run_time start?) 

3. js grag input form data and construct JSON. 

4. Using the JSON string, send ajax request. 

5. main js thread ends. (Dom.max_script_run_time end here???) 

6. xmlHttpRequest object still waiting for the ajax response back from the server. 

7. xmlHttpRequest object receives response from the server. 

8. Display response text on the web page (part of ajax callback) (Dom.max_script_run_time end here???) 

はDom.max_script_run_timeはメインjsのスレッドの終わりで停止していますか? (つまり、スクリプトの実行はスレッドごとにタイムアウトします)

答えて

1

最大スクリプト実行時間は、スクリプトがイベントループから離れている時間をカバーします。このアイデアは、ユーザーが「ハング」したスクリプトを殺すようにすることです。

send()とあなたのコールバックが起動してブラウザがユーザーイベントやその他のものを自由に処理できるため、非同期XHRを実行すると問題はありません。したがって、スクリプトは「ハング」していませんユーザの視点)。

+0

私の質問で最大スクリプト実行時間は#5で終了するのですか? –

+1

私はあなたのセットアップ権を理解していれば(JSはスレッド、モジュロワーカーを1つしか持たないので、「スレッド」の話は混乱します)、はいです。 –

+0

ああ参照してください。私はjsにスレッドが1つしかないことは知らなかった。明確化のためにありがとう。 –

関連する問題

 関連する問題