Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
peripherad
/
gitep_front
/
node_modules
/
fastq
:
bench.js
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
'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)