fix: fix availableParallelism() usage for pool min size
[poolifier.git] / examples / typescript / pool.ts
CommitLineData
fa699c42 1import { join } from 'path'
7a6a0a96 2import type { MyData, MyResponse } from './worker'
6961ca9a
JB
3import {
4 DynamicThreadPool,
5 FixedThreadPool,
6 availableParallelism
7} from 'poolifier'
e9e16250
CQ
8
9export const fixedPool = new FixedThreadPool<MyData, Promise<MyResponse>>(
6961ca9a 10 availableParallelism(),
cf9aa6c3 11 join(__dirname, 'worker.js'),
e9e16250 12 {
a974afa6
JB
13 errorHandler: (e: Error) => {
14 console.error(e)
15 },
16 onlineHandler: () => {
53795b86 17 console.info('Worker is online')
a974afa6 18 }
e9e16250 19 }
cf9aa6c3 20)
e9e16250
CQ
21
22export const dynamicPool = new DynamicThreadPool<MyData, Promise<MyResponse>>(
31a7d5be 23 Math.floor(availableParallelism() / 2),
6961ca9a 24 availableParallelism(),
cf9aa6c3 25 join(__dirname, 'worker.js'),
e9e16250 26 {
a974afa6
JB
27 errorHandler: (e: Error) => {
28 console.error(e)
29 },
30 onlineHandler: () => {
53795b86 31 console.info('Worker is online')
a974afa6 32 }
e9e16250 33 }
cf9aa6c3 34)