1.0.2 • Published 12 months ago

easy-action-queue v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

Easy Action Queue

Introductions

For every developers, at some point in their career, they will need to queue some action due to various reasons. For this purpose, this class would be really helpful.

Getting Started

First we need to install this npm dependency

npm i easy-action-queue

Once installed, you can create an instance of the queue:

import EasyActionQueue from 'easy-action-queue';

const queue = new EasyActionQueue<string | Promise<string>>();

Once you have the queue, you can use it to enqueue actions which return string:

queue.enqueue(() => 'Hello')
.then((result) => console.log(result));

queue.enqueue(() => 'World')
.then((result) => console.log(result));

queue.enqueue(async () => {
  await new Promise((resolve) => setTimeout(resolve, 1000));
  return "Delayed Action 1";
})
.then((result) => console.log(result));

queue.enqueue(async () => {
  await new Promise((resolve) => setTimeout(resolve, 1000));
  return "Delayed Action 2";
})
.then((result) => console.log(result));

Console:

Hello
World
Delayed Action 1 // After 1 seconds
Delayed Action 2 // After 2 seconds

By default, concurrent actions is set as 1 which can be changed during init:

const queueWith2Rows = new EasyActionQueue<string | Promise<string>>(2);
1.0.2

12 months ago

1.0.1

1 year ago

1.0.0

1 year ago