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 | }
|