http://jsfiddle.net/Codemonkey/ye5qv/2/
私は、setIntervalを使用して繰り返し発生する大きなワークロードを作成して、ブラウザーが作業の各反復の間に息を呑むことができるようにすることを試みています。上記の例では、フィボナッチ計算の各間隔の間に100ミリ秒の休憩をブラウザに与えていますが、ブラウザはfib()
呼び出された瞬間からコールバックが呼び出された瞬間までまだフリーズしています。注:私の例では、ドキュメントが読み込まれてから1秒前にfibo関数が呼び出されないため、数秒間フリーズすることがはっきりとわかります。
正確に、このメソッドが機能しないのはなぜですか。また、どうすれば機能させることができますか?あるいは、同じ目標結果を達成できる他の方法はどれですか?繰り返しになりますが、setIntervalを使用して作業を分割する目的は、プロセス中にブラウザーがフリーズしたり、散らかったりしないようにすることです。
私はクロームを使用していて、主にV8エンジンに関心がありますが、xブラウザー互換のソリューションはボーナスです