Skip to main content
The Deno 2 Release Candidate is here
Learn more
Module

x/poolifier/src/pools/worker-node.ts>WorkerNode

Fast and small web worker pool
Latest
class WorkerNode
implements IWorkerNode<Worker, Data>
extends EventTarget
import { WorkerNode } from "https://deno.land/x/poolifier@v0.3.14/src/pools/worker-node.ts";

Worker node.

Constructors

new
WorkerNode(
type: WorkerType,
fileURL: URL,
)

Constructs a new worker node.

Type Parameters

Worker extends IWorker
optional
Data = unknown

Properties

private
onBackPressureStarted: boolean
private
readonly
taskFunctionsUsage: Map<string, WorkerUsage>
private
readonly
tasksQueue: Deque<Task<Data>>
readonly
info: WorkerInfo
optional
messageChannel: MessageChannel
optional
strategyData: StrategyData
tasksQueueBackPressureSize: number
readonly
worker: Worker

Methods

private
closeMessageChannel(): void
deleteTaskFunctionWorkerUsage(name: string): boolean
dequeueTask(): Task<Data> | undefined
enqueueTask(task: Task<Data>): number
getTaskFunctionWorkerUsage(name: string): WorkerUsage | undefined
hasBackPressure(): boolean
popTask(): Task<Data> | undefined
resetUsage(): void
tasksQueueSize(): number
terminate(): void
unshiftTask(task: Task<Data>): number