generic-pool
Advanced tools
Comparing version 1.0.6 to 1.0.7
@@ -251,2 +251,4 @@ var PriorityQueue = function(size) { | ||
* priority. | ||
* | ||
* @returns {Object} `true` if the pool is fully utilized, `false` otherwise. | ||
*/ | ||
@@ -259,2 +261,3 @@ me.acquire = function (callback, priority) { | ||
dispense(); | ||
return (count < factory.max); | ||
}; | ||
@@ -274,2 +277,7 @@ | ||
me.release = function (obj) { | ||
// check to see if this object has already been release (i.e., is back in the pool of availableObjects) | ||
if (availableObjects.some(function(objWithTimeout) { return (objWithTimeout.obj === obj); })) { | ||
log("release called twice for the same resource: " + (new Error().stack)); | ||
return; | ||
} | ||
//log("return to pool"); | ||
@@ -276,0 +284,0 @@ var objWithTimeout = { obj: obj, timeout: (new Date().getTime() + idleTimeoutMillis) }; |
{ | ||
"name": "generic-pool", | ||
"description": "Generic resource pooling for Node.JS", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"author": "James Cooper <james@bitmechanic.com>", | ||
@@ -6,0 +6,0 @@ "contributors": [ |
@@ -13,2 +13,6 @@ | ||
1.0.7 - Oct 17 2011 | ||
- Merged #19 (prevent release on the same obj twice - contributed by tkrynski) | ||
- Merged #20 (acquire() returns boolean indicating whether pool is full - contributed by tilgovi) | ||
1.0.6 - May 23 2011 | ||
@@ -15,0 +19,0 @@ - Merged #13 (support error variable in acquire callback - contributed by tmcw) |
@@ -22,3 +22,3 @@ var assert = require('assert'); | ||
for (var i = 0; i < 10; i++) { | ||
pool.acquire(function(err, obj) { | ||
var full = !pool.acquire(function(err, obj) { | ||
return function(err, obj) { | ||
@@ -32,2 +32,3 @@ assert.equal(typeof obj.count, 'number'); | ||
}()); | ||
assert.ok((i < 1) ^ full); | ||
} | ||
@@ -34,0 +35,0 @@ |
24485
486
177