Priority Worker Queue for asynchronous job execution
This is a worker queue built for single concurrency on asychronous job execution.
Classes
- DefaultPriorityWorkerQueue ⇐
PriorityWorkerQueue
DefaultPriorityWorkerQueue
- PriorityWorkerQueue ⇐
EventEmitter
PriorityWorkerQueue
PriorityWorkerQueue
DefaultPriorityWorkerQueue ⇐ DefaultPriorityWorkerQueue
Kind: global class
Extends: PriorityWorkerQueue
promise
pwq.enqueue(func, args, [priority]) ⇒ Overloaded version of PriorityWorkerQueue.enqueue. Allows enqueue of a function without the wrapping object for ease. Allows arguments array to be passed as second argument.
Kind: instance method of DefaultPriorityWorkerQueue
Overrides: enqueue
Returns: promise
- Result of the enqueued function
Param | Type | Description |
---|---|---|
func | object | function |
Job object or function to be run. |
args | array | number |
Array of arguments (or priority if no arguments) |
[priority] | number |
The priority of a job when both func/args are given |
EventEmitter
PriorityWorkerQueue ⇐ PriorityWorkerQueue
Kind: global class
Extends: EventEmitter
- PriorityWorkerQueue ⇐
EventEmitter
new PriorityWorkerQueue(worker)
Param | Type | Description |
---|---|---|
worker | function |
The worker to run on each job supplied to the queue |
promise
pwq.enqueue(job, priority) ⇒ Adds a job to the queue to process. Resolves with the result of the function execution, or rejects with the error provided. Whenever a job is enqueued, execution of all jobs is slated for the next tick of the eventloop based on priority.
Kind: instance method of PriorityWorkerQueue
Returns: promise
- Retuns the result of the worker when running the job.
Param | Type | Default | Description |
---|---|---|---|
job | object |
The job to be run | |
priority | Number |
0 |
The priority of the job (higher number is a higher priority) |
License
© 2020 Mudrekh Goderya MIT