1 import { dirname
, extname
, join
} from
'node:path'
2 import { fileURLToPath
} from
'node:url'
4 import { availableParallelism
, DynamicThreadPool
} from
'poolifier'
12 const workerFile
= join(
13 dirname(fileURLToPath(import.meta
.url
)),
14 `worker${extname(fileURLToPath(import.meta.url))}`
17 export const requestHandlerPool
= new DynamicThreadPool
<
18 WorkerData
<BodyPayload
>,
19 WorkerResponse
<BodyPayload
>
20 >(1, availableParallelism(), workerFile
, {
21 enableTasksQueue
: true,
25 errorHandler
: (e
: Error) => {
26 console
.error('Thread worker error:', e
)