P-Limit is a JavaScript utility for controlling how many promise-returning or asynchronous functions execute at the same time. Developers create a limiter with a chosen concurrency level and run tasks through it instead of launching every operation immediately. The library works in both Node.js and modern browsers. It exposes counts for currently active and waiting tasks so applications can inspect workload state. Pending work can be cleared, and an optional setting can reject discarded promises with an AbortError. The concurrency limit can also be changed after creation. Additional helpers support concurrency-limited mapping and creating individual functions that automatically manage their own simultaneous executions.
Features
- Configurable asynchronous concurrency limits
- Node.js and browser compatibility
- Active and pending task counters
- Runtime concurrency adjustment
- Pending queue clearing with optional rejection
- Limited mapping and self-limiting function helpers