diff options
Diffstat (limited to 'queue.lua')
-rw-r--r-- | queue.lua | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -11,8 +11,12 @@ function Queue.make() }, {__index=Queue}) end -function Queue.enqueue(self, item) +function Queue.enqueue(self, ...) + local item = table.pack(...) table.insert(self.items, item) + if #self.items > 128 then + print('warning: queue is quite big') + end self.cv:signal() end @@ -23,7 +27,7 @@ function Queue.iter(self) local items = self.items self.items = {} -- the old switcheroo for _, item in ipairs(items) do - coroutine.yield(item) + coroutine.yield(table.unpack(item, 1, item.n)) end end self.cv:wait() |