function queue<TValue>(fn, initialOptions): (item, position, runOnItemsChange) => boolean;
function queue<TValue>(fn, initialOptions): (item, position, runOnItemsChange) => boolean;
Defined in: queuer.ts:732
Creates a queue that processes items immediately upon addition. Items are processed sequentially in FIFO order by default.
This synchronous version is lighter weight and often all you need - upgrade to asyncQueue when you need promises, retry support, abort capabilities, concurrent execution, or advanced error handling.
State Management:
Example usage:
// Basic sequential processing
const processItems = queue<number>((n) => console.log(n), {
wait: 1000,
onItemsChange: (queuer) => console.log(queuer.peekAllItems())
});
processItems(1); // Logs: 1
processItems(2); // Logs: 2 after 1 completes
// Priority queue
const processPriority = queue<number>((n) => console.log(n), {
getPriority: n => n // Higher numbers processed first
});
processPriority(1);
processPriority(3); // Processed before 1
// Basic sequential processing
const processItems = queue<number>((n) => console.log(n), {
wait: 1000,
onItemsChange: (queuer) => console.log(queuer.peekAllItems())
});
processItems(1); // Logs: 1
processItems(2); // Logs: 2 after 1 completes
// Priority queue
const processPriority = queue<number>((n) => console.log(n), {
getPriority: n => n // Higher numbers processed first
});
processPriority(1);
processPriority(3); // Processed before 1
TValue
(item) => void
QueuerOptions<TValue>
(
item,
position,
runOnItemsChange): boolean;
(
item,
position,
runOnItemsChange): boolean;
Adds an item to the queue. If the queue is full, the item is rejected and onReject is called. Items can be inserted based on priority or at the front/back depending on configuration.
Returns true if the item was added, false if the queue is full.
Example usage:
queuer.addItem('task');
queuer.addItem('task2', 'front');
queuer.addItem('task');
queuer.addItem('task2', 'front');
TValue
QueuePosition = ...
boolean = true
boolean
