- constructor (worker: Worker, workerType: WorkerType, poolMaxSize: number) {
- if (worker == null) {
- throw new Error('Cannot construct a worker node without a worker')
- }
- if (workerType == null) {
- throw new Error('Cannot construct a worker node without a worker type')
- }
- if (poolMaxSize == null) {
- throw new Error(
- 'Cannot construct a worker node without a pool maximum size'
- )
- }
- if (isNaN(poolMaxSize)) {
- throw new Error(
- 'Cannot construct a worker node with a NaN pool maximum size'
- )
- }
- this.worker = worker
- this.info = this.initWorkerInfo(worker, workerType)
- if (workerType === WorkerTypes.thread) {
+ constructor (type: WorkerType, filePath: string, opts: WorkerNodeOptions) {
+ super()
+ checkWorkerNodeArguments(type, filePath, opts)
+ this.worker = createWorker<Worker>(type, filePath, {
+ env: opts.env,
+ workerOptions: opts.workerOptions
+ })
+ this.info = this.initWorkerInfo(this.worker)
+ this.usage = this.initWorkerUsage()
+ if (this.info.type === WorkerTypes.thread) {