javascriptでの高価な計算にはpromiseall()を使用しますか?[複製]
Nov 26 2020
高価な計算を高速化するためにpromiseall()を使用するポイントはありますか?例えば:
//高価な計算
const data = [1, 2, 3];
const f = (x) => {
return x*x; // or a more complex formula
}
// 約束はできません
const f_data = data.map(f);
//約束付き
const f_data = Promise.all(data.map((e) => Promise((e) => f(e))).then(res => res).catch(...);
実行速度に実際の違いはありますか?
回答
GuerricP Nov 26 2020 at 04:01
いいえ、計算を高速化したい場合は、マルチスレッドを活用するためにワーカーを使用する必要があります。
を使用するとPromise.all
、すべてのコールバックがキューに入れられ、単一のスレッドで次々に実行されます。