* Handler Id of the `aliveInterval` worker alive check.
*/
protected readonly aliveInterval?: NodeJS.Timeout
- /**
- * Options for the worker.
- */
- public readonly opts: WorkerOptions
/**
* Constructs a new poolifier worker.
*
protected readonly isMain: boolean,
fn: (data: Data) => Response,
protected mainWorker: MainWorker | undefined | null,
- opts: WorkerOptions = {
+ protected readonly opts: WorkerOptions = {
/**
* The kill behavior option on this Worker or its default value.
*/
}
) {
super(type)
- this.opts = opts
this.checkFunctionInput(fn)
this.checkWorkerOptions(this.opts)
if (!this.isMain) {
value: MessageValue<Data, MainWorker>,
fn: (data: Data) => Response
): void {
- if (value.data !== undefined && value.id !== undefined) {
+ if (value.data != null && value.id != null) {
// Here you will receive messages
if (this.opts.async === true) {
this.runInAsyncScope(this.runAsync.bind(this), this, fn, value)
} else {
this.runInAsyncScope(this.run.bind(this), this, fn, value)
}
- } else if (value.parent !== undefined) {
+ } else if (value.parent != null) {
// Save a reference of the main worker to communicate with it
// This will be received once
this.mainWorker = value.parent
- } else if (value.kill !== undefined) {
+ } else if (value.kill != null) {
// Here is time to kill this worker, just clearing the interval
this.aliveInterval != null && clearInterval(this.aliveInterval)
this.emitDestroy()