1.3.10 • Published 2 years ago

@snickbit/queue v1.3.10

Weekly downloads
-
License
MIT
Repository
-
Last release
2 years ago

@snickbit/queue

Fluid queueing library for any function or promise

Installation

pnpm add @snickbit/queue
yarn add @snickbit/queue
npm i @snickbit/queue

Basic Usage

Initialize

import {queue} from '@snickbit/queue'
// or const {queue} = require('@snickbit/queue')

const $queue = queue({concurrency: 25, limit: 5, interval: 1000, strict: true})

or as a class with

import {Queue} from '@snickbit/queue'

const $queue = new Queue({concurrency: 5})

Add some Promises or functions to the queue

const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms))

for (let i = 0; i < 100; i++) {
	$queue.push(async () => {
		await sleep(Math.random() * 100)
		console.log(`${i}`)
	})
}

$queue.run()
	.then(() => console.log('done'))
	.catch((err) => console.error('Oops', err))

// or await $queue.run()

thenEach (callback)

Attaches a callback for the resolution of each Promise or Function in the queue.

catchEach (callback)

Attaches a callback for the rejection of each Promise or Function in the queue.

finallyEach (callback)

Attaches a callback that is invoked when each Promise or Function in the queue is settled (fulfilled or rejected).

Check the API Docs for more details

Documentation

API Docs

CHANGELOG

Acknowledgements

License

Copyright (c) 2022 - Nicholas Lowe aka Snickbit

MIT License

1.3.10

2 years ago

1.3.9

2 years ago

1.3.8

2 years ago

1.3.7

2 years ago

1.3.6

2 years ago

1.3.5

2 years ago

1.3.4

2 years ago

1.3.3

2 years ago

1.3.2

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.27

2 years ago

1.2.26

2 years ago

1.2.18

3 years ago

1.2.19

3 years ago

1.2.20

3 years ago

1.2.23

3 years ago

1.2.24

3 years ago

1.2.21

3 years ago

1.2.22

3 years ago

1.2.25

3 years ago

1.2.17

3 years ago

1.2.8

3 years ago

1.2.7

3 years ago

1.2.9

3 years ago

1.2.12

3 years ago

1.2.13

3 years ago

1.2.10

3 years ago

1.2.11

3 years ago

1.2.16

3 years ago

1.2.14

3 years ago

1.2.15

3 years ago

1.2.6

3 years ago

1.2.0

3 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.1.12

3 years ago

1.1.11

3 years ago

1.1.13

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

1.1.9

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.1.5

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

0.0.3

3 years ago

1.1.10

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago