File Manager Lite
Dir:
/home/u540325668/domains/sostabazar.in/public_html/node_modules/fastq
Upload
[..]
.github/
Rename
Del
LICENSE (765 B)
Edit
Rename
Del
README.md (8.12 KB)
Edit
Rename
Del
bench.js (1.17 KB)
Edit
Rename
Del
example.js (238 B)
Edit
Rename
Del
example.mjs (221 B)
Edit
Rename
Del
test/
Rename
Del
Edit: bench.js
'use strict' const max = 1000000 const fastqueue = require('./')(worker, 1) const { promisify } = require('util') const immediate = promisify(setImmediate) const qPromise = require('./').promise(immediate, 1) const async = require('async') const neo = require('neo-async') const asyncqueue = async.queue(worker, 1) const neoqueue = neo.queue(worker, 1) function bench (func, done) { const key = max + '*' + func.name let count = -1 console.time(key) end() function end () { if (++count < max) { func(end) } else { console.timeEnd(key) if (done) { done() } } } } function benchFastQ (done) { fastqueue.push(42, done) } function benchAsyncQueue (done) { asyncqueue.push(42, done) } function benchNeoQueue (done) { neoqueue.push(42, done) } function worker (arg, cb) { setImmediate(cb) } function benchSetImmediate (cb) { worker(42, cb) } function benchFastQPromise (done) { qPromise.push(42).then(function () { done() }, done) } function runBench (done) { async.eachSeries([ benchSetImmediate, benchFastQ, benchNeoQueue, benchAsyncQueue, benchFastQPromise ], bench, done) } runBench(runBench)
Simpan