Skip to content
Run promise-returning & async functions a specific number of times concurrently
JavaScript TypeScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.editorconfig
.gitattributes
.gitignore
.npmrc
.travis.yml
index.d.ts
index.js
index.test-d.ts
license
package.json
readme.md
test.js

readme.md

p-times Build Status

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

Install

$ npm install p-times

Usage

const pTimes = require('p-times');

(async () => {
	const result = await pTimes(5, i => createFixture(`🦄-${i + 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.

Related

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

License

MIT © Sindre Sorhus

You can’t perform that action at this time.