-import { isMainThread } from 'worker_threads'
-import { ThreadWorker } from '../../lib/index.mjs'
-import { executeWorkerFunction } from '../benchmarks-utils.mjs'
-import { WorkerFunctions } from '../benchmarks-types.mjs'
+import { isMainThread } from 'node:worker_threads'
-const debug = false
+import { ThreadWorker } from '../../lib/index.mjs'
+import { TaskFunctions } from '../benchmarks-types.cjs'
+import { executeTaskFunction } from '../benchmarks-utils.mjs'
-function workerFunction (data) {
+const taskFunction = data => {
data = data || {}
- data.function = data.function || WorkerFunctions.jsonIntegerSerialization
- executeWorkerFunction(data)
- debug === true && console.debug('This is the main thread ' + isMainThread)
- return { ok: 1 }
+ data.function = data.function || TaskFunctions.factorial
+ data.debug = data.debug || false
+ const res = executeTaskFunction(data)
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
+ data.debug === true &&
+ console.debug(`This is the main thread ${isMainThread}`)
+ return res
}
-export default new ThreadWorker(workerFunction)
+export default new ThreadWorker(taskFunction)