aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util.lua13
1 files changed, 5 insertions, 8 deletions
diff --git a/util.lua b/util.lua
index 852b933..b3fc4f7 100644
--- a/util.lua
+++ b/util.lua
@@ -1,9 +1,5 @@
function lua_async.yield()
- local co = assert(coroutine.running(), "yield called outside of an async function")
-
- setTimeout(lua_async.resume, 0, co)
-
- coroutine.yield()
+ lua_async.sleep(0)
end
function lua_async.kill_thread()
@@ -11,9 +7,10 @@ function lua_async.kill_thread()
end
function lua_async.sleep(ms)
- await(Promise(function(resolve)
- setTimeout(resolve, ms)
- end))
+ local co = assert(coroutine.running(), "sleep called outside of an async function")
+ setTimeout(lua_async.resume, ms, co)
+
+ coroutine.yield()
end
function lua_async.run()