aboutsummaryrefslogtreecommitdiffstats
path: root/util/timer.lua
diff options
context:
space:
mode:
Diffstat (limited to 'util/timer.lua')
-rw-r--r--util/timer.lua8
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;
};