fast-async-pool
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

fast-async-pool

similar to p-map or tiny-async-pool, fast-async-pool run async/promise returning functions with limited concurrency and low overhead.

Install

$ npm install fast-async-pool

Usage

import asyncPool from 'fast-async-pool';
import fetch from 'cross-fetch';

const sites = [
	'https://jestjs.io',
	'https://github.com',
  'https://www.npmjs.com',
  'https://www.solidjs.com'
];

const pages = await asyncPool(2, sites, async site => {
	const response = await fetch(site);
  return response.text();
});

console.log(pages);

API

asyncPool(limit, array, fn)

Returns a Promise that is fulfilled when all promises generated by mapping array to fn are fulfilled, or rejects if any of the promises reject. The fulfilled value is an Array of the fulfilled values returned from fn in array order.

limit

concurrency limit

Type: number >= 1

array

Type: Array<Promise<unknown> | unknown>

fn(element, index, array)

Type: Function

Expected to return a Promise or value.

Package Sidebar

Install

npm i fast-async-pool

Weekly Downloads

2

Version

1.0.1

License

MIT

Unpacked Size

8.67 kB

Total Files

7

Last publish

Collaborators

  • didierdemoniere