Thank you :) It's very pleasant to meet a person that feels the same 
problem very well!
Yes, one of the key points is exactly handling the map of callbacks.
Do I understand correctly that your cb module stands in one row with 
addTimeout and future and doesn't provide freeing callbacks on it's own?

Since you've written a similar module too, you would likely want to know 
that one of high speed factors of the module was using optimized versions 
of setTimeout (1.05..1.5 times) and clearTimeout (20-30 times faster :)). 
I've created a pull request ( https://github.com/joyent/node/pull/4193 ) 
for node.js. More details and benchmarks are here - 
https://github.com/joyent/node/issues/4225#issuecomment-9971557

пятница, 2 ноября 2012 г., 20:03:14 UTC+7 пользователь jmar777 написал:
>
> Looks like an interesting idea.  We had to build some similar 
> functionality for wrapping some fairly indeterminate behavior to a 
> request/response model.  Part of our solution there was a utility that at 
> least offered some of the timeout handling: https://github.com/jmar777/cb
>
> Using the above, we then just had a map that kept track of callbacks keyed 
> by an id (which looks like that's part of the problem candle addresses). 
>  Nice work!
>
> On Wednesday, October 31, 2012 7:48:56 AM UTC-4, Alexey Kupershtokh wrote:
>>
>> Here it is: https://github.com/AlexeyKupershtokh/node-candle
>>
>> it's similar to:
>> https://github.com/coolaj86/futures/tree/v2.0/future
>> and
>> https://github.com/temsa/addTimeout
>> to some extent, except that the callbacks are able to free in my case 
>> allowing to avoid leaks.
>>
>> As an yet another example, if you use a callback wrapped by 
>> addTimeout(timeout, cb) or future.once(cb).setTimeout(timeout) as an ACK 
>> callback for a socket.io request that is never acknowledged, this 
>> wrapepd callback would exist till the socket is disconnected.
>>
>> Any response is highly appreciated.
>>
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to