1.0.2 • Published 3 years ago

@larspa/task-queue v1.0.2

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

task-queue

A simple way to queue asynchronous tasks

NPM Version

Install

npm i -S @larspa/task-queue

yarn add @larspa/task-queue -S

Usage

import TaskQueue from '@larspa/task-queue';

const taskQueue = new TaskQueue();

const task1 = () =>
  new Promise((resolve, reject) => {
    setTimeout(() => {
      console.log("t1 success");
      resolve('test 1');
    }, 100);
  });

const task2 = () =>
  new Promise((resolve, reject) => {
    setTimeout(() => {
      console.log("t2 success");
      resolve('test 2');
    }, 1000);
  });

const task3 = () =>
  new Promise((resolve, reject) => {
    setTimeout(() => {
      console.log("t3 success");
      resolve('test 3');
    }, 500);
  });

taskQueue.enqueue(task1).then(console.log);
taskQueue.enqueue(task2).then(console.log);
taskQueue.enqueue(task3).then(console.log);

// output after 1000ms: t1 success
// output after 1000ms: test 1
// output after 1100ms: t2 success
// output after 1100ms: test 2
// output after 1600ms: t3 success
// output after 1600ms: test 3

License

MIT

1.0.2

3 years ago

1.0.1

5 years ago

1.0.0

5 years ago