@comodinx/async-helpers
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

Async helpers

INSPIRATE ON p-limit OF Sindre Sorhus

@comodinx/promise-helpers is a module for optimize promise usage.

Index

  • [Download & Install][install].
  • [How is it used?][how_is_it_used].
  • [Tests][tests].

Download & Install

NPM

$ npm i @comodinx/async-helpers

Source code

$ git clone https://gitlab.com/comodinx/async-helpers.git
$ cd async-helpers
$ npm i

How is it used?

Run multiple promise-returning & async functions with limited concurrency

asyncLimit

import { asyncLimit } from "@comodinx/async-helpers";

const limit = asyncLimit(1);

const input = [
	limit(() => fetchSomething('foo')),
	limit(() => fetchSomething('bar')),
	limit(() => doSomething())
];

// Only one promise is run at once
const result = await Promise.all(input);
console.log(result);

asyncLimitFn

import { asyncLimitFn } from "@comodinx/async-helpers";

const limitedFunction = asyncLimitFn(async () => {
	return doSomething();
}, {concurrency: 1});

const input = Array.from({length: 10}, limitedFunction);

// Only one promise is run at once.
await Promise.all(input);

Package Sidebar

Install

npm i @comodinx/async-helpers

Weekly Downloads

1

Version

0.0.3

License

ISC

Unpacked Size

12.2 kB

Total Files

8

Last publish

Collaborators

  • comodinx