X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=examples%2Ftypescript%2Fpool.ts;h=fb48f7b07db76324a75afc001e131dd448a6809f;hb=refs%2Ftags%2Fv3.1.28;hp=144d55002bd048ea865365cb6696cdb887745230;hpb=ac35d84eacd6a5dec2373efb3afc083a73ea2c2e;p=poolifier.git diff --git a/examples/typescript/pool.ts b/examples/typescript/pool.ts index 144d5500..fb48f7b0 100644 --- a/examples/typescript/pool.ts +++ b/examples/typescript/pool.ts @@ -1,18 +1,20 @@ import { dirname, extname, join } from 'node:path' import { fileURLToPath } from 'node:url' -import type { MyData, MyResponse } from './worker.js' + import { + availableParallelism, DynamicThreadPool, - FixedThreadPool, - availableParallelism + FixedThreadPool } from 'poolifier' +import type { MyData, MyResponse } from './worker.js' + const workerFile = join( dirname(fileURLToPath(import.meta.url)), `worker${extname(fileURLToPath(import.meta.url))}` ) -export const fixedPool = new FixedThreadPool( +const fixedPool = new FixedThreadPool( availableParallelism(), workerFile, { @@ -25,7 +27,9 @@ export const fixedPool = new FixedThreadPool( } ) -export const dynamicPool = new DynamicThreadPool( +await fixedPool.execute() + +const dynamicPool = new DynamicThreadPool( Math.floor(availableParallelism() / 2), availableParallelism(), workerFile, @@ -39,6 +43,8 @@ export const dynamicPool = new DynamicThreadPool( } ) +await dynamicPool.execute() + // eslint-disable-next-line @typescript-eslint/no-misused-promises setTimeout(async () => { await fixedPool.destroy()