build: fix rollup external regexp
[poolifier.git] / examples / typescript / pool.ts
index b6bb4da3427a93132842e5953cd6fa858d52408d..3d9d9e6f482723cdb634e98bd02a9bbd46df3314 100644 (file)
@@ -1,4 +1,5 @@
-import { join } from 'path'
+import { dirname, extname, join } from 'node:path'
+import { fileURLToPath } from 'node:url'
 import type { MyData, MyResponse } from './worker'
 import {
   DynamicThreadPool,
@@ -6,9 +7,14 @@ import {
   availableParallelism
 } from 'poolifier'
 
+const workerFile = join(
+  dirname(fileURLToPath(import.meta.url)),
+  `worker${extname(fileURLToPath(import.meta.url))}`
+)
+
 export const fixedPool = new FixedThreadPool<MyData, Promise<MyResponse>>(
   availableParallelism(),
-  join(__dirname, 'worker.js'),
+  workerFile,
   {
     errorHandler: (e: Error) => {
       console.error(e)
@@ -20,9 +26,9 @@ export const fixedPool = new FixedThreadPool<MyData, Promise<MyResponse>>(
 )
 
 export const dynamicPool = new DynamicThreadPool<MyData, Promise<MyResponse>>(
-  availableParallelism() / 2,
+  Math.floor(availableParallelism() / 2),
   availableParallelism(),
-  join(__dirname, 'worker.js'),
+  workerFile,
   {
     errorHandler: (e: Error) => {
       console.error(e)