https://github.com/yosgspec/bench-langs
こいつで書いたclusterのやつを移植した奴。
https://github.com/yosgspec/bench-langs
こいつで書いたclusterのやつを移植した奴。
"use strict";const {Worker,isMainThread,workerData,parentPort,threadId}=require("worker_threads");const cores=4;var maxsum=5000000000;if(!isMainThread){maxsum=workerData.maxsum;var esum=0;for(var i=0;i<maxsum;i++){esum++;}parentPort.postMessage(esum);process.exit();}console.time();maxsum/=cores;var sum=0;(async function(){const myWorkers=Array(cores).fill().map(n=>new Promise(resolve=>{new Worker(__filename,{workerData:{maxsum: maxsum}}).once("message",esum=>{sum=sum+esum;return resolve();});}));await Promise.all(myWorkers);console.log(sum);console.timeEnd();})();