myqueue
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

MyQueue

MyQueue is a queuing system used to make functions run sequentially or in parallel

Made by

Esponjosin With the help of Danny

Install

npm i myqueue --save

Functions

If you want to be aware of what is happening internally you can log what the debug event emits

<Queue>.on('debug', console.log)

Add

The add function is used to add the desired function to the waiting list

/**
 * @param {Object} [obj] Object with the data of the function
 * @param  {...any} args Arguments to be given to the function
 */

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

// Normal

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

// Emitting an event when the task is complete

const observer = new (require('events'));

observer.on('test', console.log)

Queue.Add({
    fun: log,
    emitter: observer,
    event: 'test',
    argsToEmit: 'NodeJS'
}, 'Hello', 'World');

/**
Expected Promise Output
{<Function> response}
 */

Slice

The slice function is used to remove a waiting function from the queue

/**
 * @param {Number} [index] Index in which you want to delete
 */

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Add({
    fun: log
}, 'Hello', 'World');

Queue.Slice(1)

/**
Expected Promise Output
{<Boolean>}
 */

Pause

The function pauses for the queue indefinitely until it is reactivated with the function resume

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Pause()

/**
Expected Promise Output
{<Boolean>}
 */

Resume

The resume function reactivates the queue

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Resume()

/**
Expected Promise Output
{<Boolean>}
 */

allQueue

The allQueue function returns an array with all the tasks that are waiting

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.allQueue()

/**
Expected Promise Output
{<Array>}
 */

Clear

The Clear function removes the entire queue

// Javascript

const Queue = new (require('myqueue'))();

// Typescript

import MyQueue from 'myqueue';

const Queue: MyQueue = new MyQueue();

Queue.Add({
    fun: log
}, 'Hello', 'World');

function log(...args) {
    console.log(...args);
};

Queue.Clear()

/**
Expected Promise Output
{<Array>}
 */

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.0.22latest

Version History

VersionDownloads (Last 7 Days)Published
1.0.22
1.0.10
1.0.00

Package Sidebar

Install

npm i myqueue

Weekly Downloads

2

Version

1.0.2

License

ISC

Unpacked Size

17.6 kB

Total Files

13

Last publish

Collaborators

  • esponjosin