diff options
Diffstat (limited to 'util/timer.lua')
-rw-r--r-- | util/timer.lua | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/util/timer.lua b/util/timer.lua index ff834068..70678ab2 100644 --- a/util/timer.lua +++ b/util/timer.lua @@ -10,6 +10,7 @@ local indexedbheap = require "util.indexedbheap"; local log = require "util.logger".init("timer"); local server = require "net.server"; local get_time = require "util.time".now +local async = require "util.async"; local type = type; local debug_traceback = debug.traceback; local tostring = tostring; @@ -102,9 +103,16 @@ local function reschedule(id, delay) return id; end +local function sleep(s) + local wait, done = async.waiter(); + add_task(s, done); + wait(); +end + return { add_task = add_task; stop = stop; reschedule = reschedule; + sleep = sleep; }; |