1.0.2 • Published 6 years ago

process-concurrent v1.0.2

Weekly downloads
20
License
-
Repository
-
Last release
6 years ago

process-concurrent

Process an array of items concurrently

Install

$ yarn add process-concurrent

Usage

processConcurrent(items, itemProcessor, options)

Valid options are:

  • concurrency - Number of items to process concurrently (default 5)
  • maxTries - Number of retries if itemProcessor throws an error (default 3)

Examples

A simple example

const concurrent = require('process-concurrent')

const items = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

const processItem = (item) => console.log(`Process ${item}`)

concurrent(items, processItem)

Async with options

const concurrent = require('process-concurrent')

const items = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

const processItem = (item) => new Promise(resolve => {
    setTimeout(() => {
        console.log(`Process ${item}`)
        resolve()
    }, Math.random() * 100)
})

concurrent(items, processItem, { concurrency: 4, maxTries: 3 })