Javascript ルーチン (約 400、複雑なもの) によって初期化する必要がある多くのウィジェットを使用する特定のページがあります。これには時間がかかります (遅いマシンでは 20 秒もかかります)。ページの代わりに進行状況インジケーター (パーセンテージ ラベルが付いた単純なテキスト フィールド) を表示できると考えていましたが、継続的に更新していても、進行中のタスクによってすべてがブロックされ、更新が表示されないことがわかりました。そのため、負荷の高い JavaScript タスクが完了するまで、すべてがフリーズしたままになります。私も次の実験を行いましたが、同様にフリーズします (そして、Firefox はスクリプトが完了するのに時間がかかりすぎると言っています...):
function a(){
for (var i = 0; i < 5000000000000000; i++){
abb = i;
}
}
var abb;
function c(){
var ef = document.getElementById("pip");
ef.innerHTML = abb;
}
function b(){
setInterval(c, 50);
setTimeout(a, 1000);
}
私に来る唯一の解決策は、長い仕事をバラバラにしてラベルを更新することです....しかし、別の解決策があるかどうか疑問に思っていました! 神よ、JSにはできるだけ早くスレッドが必要です... :)
何か案は?