1. 简介
promise-wip-throttler
是一个用于控制 Promise 并发数量的 npm 包。它可以限制 Promise 的并发数量,防止并发过高造成资源浪费或程序崩溃的问题。
该包具有以下特点:
- 支持自定义最大并发数量;
- 可以设置队列等待时间,让任务出现等待时间过长时直接放弃执行;
- 具有简单的 API,易于使用。
2. 安装
--- ------- ---------------------
3. 使用
3.1 引入
----- - --------- - - --------------------------------
3.2 创建实例
----- --------- - --- ----------- --------------- - -- ------ --
3.3 执行任务
------------------ -- -- - -- ------------ ------ --- --------------- -- ------------------- ------ - -
3.4 组合任务
------------- -------------------- -- ----------------------------- -------------------- -- ----------------------------- -------------------- -- ----------------------------- --------------- ----- ------ -- - -- ------ --
3.5 队列等待时间
----- --------- - --- ----------- --------------- -- -- ------ ------------- --- -- --------- -------------- --
4. 示例代码
----- - --------- - - -------------------------------- ----- --------- - --- ----------- --------------- -- ------------- --- -- ----- ----- - -- --- ---- - - -- - - --- ---- - ------------- -- - ------ --- --------------- -- ------------- -- - ----------------- ---- -- ------ --------- -- ------------- - ------ -- - -------------------------- -- ------------------------- -------- -- - ---------------- ----- --- ------ -- ---------- -- - ------------------ --
以上示例代码会同时启动 10 个任务,但是由于 maxConcurrency
配置的是 5,因此只有 5 个任务会在同一时间内执行,并且每个任务执行的时间不定,所以最终的执行顺序也不定。但你可以肯定的是,所有任务都会在有限的时间内执行完毕。如果你将 maxConcurrency
设置成过高的值,那么同时会并发过高,可能会导致程序崩溃或者接口调用频率限制。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005672581e8991b448e3a0b