5 ms·
Using the results array to store the scheduled tasks is an interesting idea. Thanks for the suggestion!
by mbostock 14y ago
Using the results array to store the scheduled tasks is an interesting idea. Thanks for the suggestion!
- abecedarius 14y agoYou're welcome! I tried coding this up at https://gist.github.com/darius/5287542 https://gist.github.com/darius/5287542 (untested). I see you have your own version now, which is longer but has a loop where I fell back to the tail call. (I also cut out a line in notify(), though you might prefer the old behavior of passing undefined for the results array on error, vs. the new one of an empty array. I guess I would prefer the old behavior on reflection.) Some doc suggestions from my draft and I'll finally shut up: // Can you call things after the first .await or .awaitAll? // Whatever the answer, it should be documented. // Maybe document the assumption that callbacks get invoked exactly once? // (It'd be possible to ensure it's at most once.) // Document assumption: the notified awaitAll function won't mess with its array argument // (this matters if we're called again after).