JavaScript Web Workers に関するドキュメントは気が遠くなるようなものです。基本的に、ブラウザが少しハングアップする重いループがあります。その重いループを別の CPU コアにオフロードできれば、アプリケーションの負荷を軽減して、よりスムーズに実行できると期待しています。単純なループを使用してグローバル変数を変更しようとしています:
var globalarr;
function webWorkerOp(CSV) {
var lines = CSV.split("%");
var items, obj, arr = [];
for (var x = 0, len = lines.length; x < len; x++) {
items = lines[x].split(",");
obj = {};
obj.a = +items[0];
obj.b = +items[1];
arr[x] = obj;
}
globalarr = arr;
}
コードを実行している主要なプログラムと競合することなく、このループ操作を Web ワーカーにラップするにはどうすればよいでしょうか? グローバル変数の変更は確かに問題になると思います。新しい配列をglobalarr変数に割り当てることさえ可能ですか? 助けていただければ幸いです。ありがとう!