concurrent_promise

Parallel processing module for JavaScript that can specify the number of concurrent executions.

Este script não deve ser instalado diretamente. Este script é uma biblioteca de outros scripts para incluir com o diretório meta // @require https://update.greasyfork.org/scripts/398566/785036/concurrent_promise.js

Você precisará instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Você precisará instalar uma extensão como o Tampermonkey para instalar este script.

Você precisará instalar um gerenciador de scripts de usuário para instalar este script.

(Eu já tenho um gerenciador de scripts de usuário, me deixe instalá-lo!)

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

(Eu já possuo um gerenciador de estilos de usuário, me deixar fazer a instalação!)

Autor
風柳@furyutei
Versão
0.0.1.20200327101858
Criado
24/03/2020
Atualizado
27/03/2020
Tamanho
4,23 KB
Licença
N/A

js-concurrent_promise

  • License: The MIT license
  • Copyright (c) 2020 furyu @furyutei
  • Target: Browser(Google Chrome, Firefox), Node.js

Parallel processing module for JavaScript that can specify the number of concurrent executions.

Module

Usage

let result_info = await concurrent_promise.execute(
        promise_function_array, // Array of functions that return Promise (Note: it's not Promise itself)
        max_concurrent_worker // Max concurrent Promise number (default: 10)
    );
//  result_info = {
//      promise_results : <Array of results for each Promise>,
//      success_list : <Array of successful Promise results>,
//      failure_list : <Array of failed Promise results>,
//  }

Trial

Browser

Open the test page in your browser and follow the instructions to run it.

Node.js

Install

$ cd js-concurrent_promise
$ yarn install

Examples

$ node -i
// [load modules]
const { concurrentPromise, concurrent_promise, test } = require( './test/node_test.js' );

// [run]
//   test.run( target_module, promise_number, max_concurrent_worker );

// target_module = concurrentPromise: simple version (run Promise.all with each max_concurrent_worker)
test.run( concurrentPromise, 100, 10 );

// target_module = concurrent_promise: efficiency improvement version
test.run( concurrent_promise, 100, 10 );

// [cancel]
test.cancel();

Performance Comparison of Parallel Processing

Performance Comparison of Parallel Processing in JavaScript