diff options
Diffstat (limited to 'node_modules/dir-compare/src/fs/BufferPool.js')
-rw-r--r-- | node_modules/dir-compare/src/fs/BufferPool.js | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/node_modules/dir-compare/src/fs/BufferPool.js b/node_modules/dir-compare/src/fs/BufferPool.js deleted file mode 100644 index 48febce..0000000 --- a/node_modules/dir-compare/src/fs/BufferPool.js +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Collection of buffers to be shared between async processes. - * Avoids allocating buffers each time async process starts. - * bufSize - size of each buffer - * bufNo - number of buffers - * Caller has to make sure no more than bufNo async processes run simultaneously. - */ -function BufferPool(bufSize, bufNo) { - var bufferPool = [] - for (var i = 0; i < bufNo; i++) { - bufferPool.push({ - buf1: alloc(bufSize), - buf2: alloc(bufSize), - busy: false - }) - } - - var allocateBuffers = function () { - for (var j = 0; j < bufNo; j++) { - var bufferPair = bufferPool[j] - if (!bufferPair.busy) { - bufferPair.busy = true - return bufferPair - } - } - throw new Error('Async buffer limit reached') - } - - return { - allocateBuffers: allocateBuffers, - freeBuffers: freeBuffers - } - - function freeBuffers(bufferPair) { - bufferPair.busy = false - } -} - -function alloc(bufSize) { - if (Buffer.alloc) { - return Buffer.alloc(bufSize) - } - return new Buffer(bufSize) -} - -module.exports = BufferPool |