Server IP : 162.0.232.140 / Your IP : 3.17.70.182 Web Server : LiteSpeed System : Linux premium139.web-hosting.com 4.18.0-513.24.1.lve.2.el8.x86_64 #1 SMP Fri May 24 12:42:50 UTC 2024 x86_64 User : micrcvoy ( 740) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/self/root/lib/node_modules/npm/node_modules/worker-farm/examples/pi/ |
Upload File : |
'use strict' const CHILDREN = 500 , POINTS_PER_CHILD = 1000000 , FARM_OPTIONS = { maxConcurrentWorkers : require('os').cpus().length , maxCallsPerWorker : Infinity , maxConcurrentCallsPerWorker : 1 } let workerFarm = require('../../') , calcDirect = require('./calc') , calcWorker = workerFarm(FARM_OPTIONS, require.resolve('./calc')) , ret , start , tally = function (finish, err, avg) { ret.push(avg) if (ret.length == CHILDREN) { let pi = ret.reduce(function (a, b) { return a + b }) / ret.length , end = +new Date() console.log('π ≈', pi, '\t(' + Math.abs(pi - Math.PI), 'away from actual!)') console.log('took', end - start, 'milliseconds') if (finish) finish() } } , calc = function (method, callback) { ret = [] start = +new Date() for (let i = 0; i < CHILDREN; i++) method(POINTS_PER_CHILD, tally.bind(null, callback)) } console.log('Doing it the slow (single-process) way...') calc(calcDirect, function () { console.log('Doing it the fast (multi-process) way...') calc(calcWorker, process.exit) })