Files: e9d4ab45391a98cd08092fe447f7cd7c3732779b / lib / release-next-tick.js
321 bytesRaw
1 | var queue = [] |
2 | |
3 | module.exports = function (item) { |
4 | if (queue.length === 0) { |
5 | setImmediate(flush) |
6 | } |
7 | queue.push(item) |
8 | } |
9 | |
10 | function flush () { |
11 | while (queue.length) { |
12 | var item = queue.pop() |
13 | if (!item.bound && typeof item.release === 'function') { |
14 | item.release() |
15 | item.release = null |
16 | } |
17 | } |
18 | } |
19 |
Built with git-ssb-web