Awesome
p-times
Run promise-returning & async functions a specific number of times concurrently
Install
$ npm install p-times
Usage
import pTimes from 'p-times';
const result = await pTimes(5, index => createFixture(`π¦-${index + 1}`));
console.log(`Created fixtures: ${result.join(' ')}`);
//=> 'Created fixtures: π¦-1 π¦-2 π¦-3 π¦-4 π¦-5'
API
pTimes(count, mapper, options?)
Returns a Promise
that is fulfilled when all promises returned from mapper
are fulfilled, or rejects if any of the promises reject. The fulfilled value is an Array
of the fulfilled values returned from mapper
in order.
count
Type: number
Number of times to call mapper
.
mapper(index)
Type: Function
Expected to return a Promise
or value.
options
Type: object
concurrency
Type: number
Default: Infinity
Minimum: 1
Number of concurrently pending promises returned by mapper
.
stopOnError
Type: boolean
Default: true
When set to false
, instead of stopping when a promise rejects, it will wait for all the promises to settle and then reject with an aggregated error containing all the errors from the rejected promises.