1.0.5 • Published 7 years ago

pace-yourself v1.0.5

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

pace-yourself

flipactual Travis Codecov Node NPM

A priority queue and consumer

PriorityQueue

Class representing a priority queue

Kind: global class

new PriorityQueue(priorities)

constructor - Create a priority queue

ParamTypeDefaultDescription
prioritiesarray1, 2An array of priority levels the queue should support from highest to lowest

Example

const queue = new PriorityQueue();

priorityQueue.enqueue(entry, priority) ⇒ promise

enqueue - Enqueue a function

Kind: instance method of PriorityQueue
Returns: promise - A promise that resolves with enqueued function

ParamTypeDefaultDescription
entryfunctionThe function to enqueue
prioritynumberthis.priorities0The priority of the function to enqueue

Example

const queue = new PriorityQueue();
queue.enqueue(() => 'ayy', 2);
// → returns a promise that resolves with 'ayy'

priorityQueue.dequeue() ⇒ function

dequeue - Dequeue the next item in the highest priority queue with items

Kind: instance method of PriorityQueue
Returns: function - The dequeued function
Example

const queue = new PriorityQueue();
queue.enqueue(() => 'lmao', 2).then(result => console.log(result));
queue.dequeue()();
// → resolves the promise, logging 'lmao'

QueueConsumer

Class representing a queue consumer

Kind: global class

new QueueConsumer(queue, delay)

constructor - Create a queue consumer

ParamTypeDefaultDescription
queuePriorityQueueThe queue to consume
delaynumber2500The interval, in ms, to wait between dequeueing functions

Example

const queue = new PriorityQueue();
const consumer = new QueueConsumer(queue, 86400000);

queueConsumer.start()

start - Start consuming the queue

Kind: instance method of QueueConsumer

queueConsumer.stop()

stop - Stop consuming the queue

Kind: instance method of QueueConsumer

Scripts

test – run the tests

npm run test

coverage – generate and view code coverage as HTML

npm run coverage

lint – lint the codebase

npm run lint

readme – generate the README

npm run readme

compile – compile the code

npm run compile

License

MIT @ Flip

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago

0.0.0

8 years ago