Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

p-times

sindresorhus63.5kMIT4.0.0TypeScript support: included

Run promise-returning & async functions a specific number of times concurrently

promise, times, number, count, loop, iterate, async, await, promises, concurrently, concurrency, parallel, bluebird

readme

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.

  • p-forever - Run promise-returning & async functions repeatedly until you end it
  • p-map - Map over promises concurrently
  • p-filter - Filter promises concurrently
  • More…