repositories
/
poolifier.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge dependabot/npm_and_yarn/examples/typescript/http-client-pool/poolifier-3.1...
[poolifier.git]
/
examples
/
typescript
/
pool.ts
diff --git
a/examples/typescript/pool.ts
b/examples/typescript/pool.ts
index b6bb4da3427a93132842e5953cd6fa858d52408d..de49c93ad6f8c73bc3cfaa680a78134cdd8daa56 100644
(file)
--- a/
examples/typescript/pool.ts
+++ b/
examples/typescript/pool.ts
@@
-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,
import type { MyData, MyResponse } from './worker'
import {
DynamicThreadPool,
@@
-6,9
+7,14
@@
import {
availableParallelism
} from 'poolifier'
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(),
export const fixedPool = new FixedThreadPool<MyData, Promise<MyResponse>>(
availableParallelism(),
-
join(__dirname, 'worker.js')
,
+
workerFile
,
{
errorHandler: (e: Error) => {
console.error(e)
{
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>>(
)
export const dynamicPool = new DynamicThreadPool<MyData, Promise<MyResponse>>(
-
availableParallelism() / 2
,
+
Math.floor(availableParallelism() / 2)
,
availableParallelism(),
availableParallelism(),
-
join(__dirname, 'worker.js')
,
+
workerFile
,
{
errorHandler: (e: Error) => {
console.error(e)
{
errorHandler: (e: Error) => {
console.error(e)
@@
-32,3
+38,9
@@
export const dynamicPool = new DynamicThreadPool<MyData, Promise<MyResponse>>(
}
}
)
}
}
)
+
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
+setTimeout(async () => {
+ await fixedPool.destroy()
+ await dynamicPool.destroy()
+}, 3000)