11
私は思考実験をしています。私のコードでは、グローバル変数はvar changeMe;
と言っていますが、私はAjaxコールをほとんど作っていません。Javascript Ajaxでデッドロックが発生する可能性がありますか?
//call One -- third param is the callback function
ajaxFunction(url1, params,function(data){
changeMe = data;
});
//call Two
ajaxFunction(url2, params,function(data){
changeMe = data;
});
のでchangeMe
値は、Ajaxが最後に終了呼び出しが値を上書きすることを意味しており、最後の仕上げを呼び出しているに依存します。
両方の呼び出しが同じ時刻に同じで正確に終了すると、同じタイムスタンプ?
JavaScriptはシングルスレッドなので、通常この問題は発生しませんが、これはsetTimeout
とAjaxの呼び出しで発生する可能性があります。私はこの問題をどのように正確に再現できるのか分かりませんので、まだ考えられている実験のままです。
したがって、マルチスレッド状態ではデッドロックがどのように処理されますか?
私はchangeMe
のような答えはJavascriptがイベントキューを持って事前にurl1
またはurl2
、クリア状況の説明..
おかげ
http://stackoverflow.com/questions/7575589/how-does-javascript-handle-ajax-responses-in-the-background/7575649#7575649 –
JavaScriptでは、スレッドが1つしかないため、問題ない。私はこのような状況アプトその後、WHT ...シンプルANS FRこの... – erikkallen
@Ishank ...おかげfrの? – Sarath