-// fixed pool proof
-async function fixedTest () {
- return new Promise((resolve, reject) => {
- let executions = 0
- for (let i = 0; i <= tasks; i++) {
- fixedPool.execute(workerData).then(res => {
- executions++
- if (executions === tasks) {
- resolve('FINISH')
- }
- })
- }
- })
-}
-
-async function dynamicTest () {
- return new Promise((resolve, reject) => {
- let executions = 0
- for (let i = 0; i <= tasks; i++) {
- dynamicPool.execute(workerData).then(res => {
- executions++
- if (executions === tasks) {
- resolve('FINISH')
- }
- })
- }
- })
-}
-
-async function externalPoolTest () {
- return new Promise((resolve, reject) => {
- let executions = 0
- for (let i = 0; i <= tasks; i++) {
- new Promise((resolve, reject) => {
- externalPool.acquire('./externalWorker.js', { workerData: workerData }, (err, worker) => {
- if (err) {
- return reject(err)
- }
- worker.on('error', reject)
- worker.on('message', res => {
- executions++
- resolve(res)
- })
- })
- }).then(res => {
- if (tasks === executions) {
- resolve('FINISH')
- }
- })
- }
- })
-}
-