jsはsetTimeoutとsetIntervalに基づいてマルチスレッドを実現する.

1356 ワード

この例は、jsがsetTimeoutに基づいてsetIntervalとマルチスレッドを実現する方法を説明する.皆さんに参考にしてあげます.具体的には以下の通りです.
javascriptがスレッドブロッキングを実現できないのは、sleepがシステムコールに関連しているからです.Jsは安全上システムからの呼び出しは禁止されています.
ステートメントを実行し続けるには、While(1)の空転でCPUを消費し、時間が来たらbreakと判断するしかない.でも、この方法は本当のsleepではないです.
一回だけ実行するタイマー


//               
function hello(){
  alert("hello");
}
//          
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout("hello()",3000);//         
window.clearTimeout(t1);//     


繰り返し実行するタイマー


function hello(){
  alert("hello");
}
//        
var t1 = window.setInterval(hello,1000);
var t2 = window.setInterval("hello()",3000);
//        
window.clearInterval(t1);


問題:
一つのページで二つの方法がページのロードが完了したら実行されますが、実際に実行した結果は自分の想像した順序で実行できません.どうやって解決しますか?
解決方法:
ワンロード方法にタイマーを追加して、タイマーをセットして、「遅延」してから運行します.これで、ページのローディング方法を区別する先着順となります.
JavaScript関連の内容について興味がある読者は、当駅のテーマを見ることができます.「JavaScript切替特効と技巧まとめ」、「JavaScript検索アルゴリズム技術まとめ」、「JavaScriptアニメーション特効と技巧まとめ」、「JavaScriptエラーとデバッグ技術まとめ」、「JavaScriptデータ構造とアルゴリズムのまとめ」、「JavaScriptアルゴリズムとアルゴリズムのまとめ」などがいっぱいあります.及び「JavaScript数学演算の使い方のまとめ」
本論文で述べたように、JavaScriptプログラムの設計に役に立ちます.