Linux v69820.1blu.de 4.15.0 #1 SMP Mon Sep 30 15:36:27 MSK 2024 x86_64
Apache/2.4.58
Server IP : 195.90.215.149 & Your IP : 216.73.216.250
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
doc /
node-throat /
Delete
Unzip
Name
Size
Permission
Date
Action
README.md
2.31
KB
-rw-r--r--
2023-12-13 10:07
SECURITY.md
287
B
-rw-r--r--
2023-12-13 10:07
copyright
6.36
KB
-rw-r--r--
2023-12-13 08:28
Save
Rename
# throat Throttle the parallelism of an asynchronous, promise returning, function / functions. This has special utility when you set the concurrency to `1`. That way you get a mutually exclusive lock. [Professionally supported throat is now available](https://tidelift.com/subscription/pkg/npm-throat?utm_source=npm-throat&utm_medium=referral&utm_campaign=readme) [](https://github.com/ForbesLindesay/throat/actions/workflows/test.yml?query=branch%3Amaster) [](https://coveralls.io/github/ForbesLindesay/throat) [](https://rollingversions.com/ForbesLindesay/throat) [](https://www.npmjs.com/package/throat) ## Installation npm install throat ## API ### throat(concurrency) This returns a function that acts a bit like a lock (exactly as a lock if concurrency is 1). Example, only 2 of the following functions will execute at any one time: ```js const throat = require('throat')(2); const resA = throat(async () => { /* async stuff... */ }); const resB = throat(async () => { /* async stuff... */ }); const resC = throat(async () => { /* async stuff... */ }); const resD = throat(async () => { /* async stuff... */ }); const resE = throat(async () => { /* async stuff... */ }); ``` ### throat(concurrency, worker) This returns a function that is an exact copy of `worker` except that it will only execute up to `concurrency` times in parallel before further requests are queued: ```js const throat = require('throat'); const input = ['fileA.txt', 'fileB.txt', 'fileC.txt', 'fileD.txt']; const data = Promise.all( input.map(throat(2, (fileName) => readFile(fileName))) ); ``` Only 2 files will be read at a time, sometimes limiting parallelism in this way can improve scalability. ## Security contact information To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security). Tidelift will coordinate the fix and disclosure. ## License MIT