summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/luv/examples/cqueues-main.lua
diff options
context:
space:
mode:
author ImJezze <jezze@gmx.net>2016-02-21 11:48:45 +0100
committer ImJezze <jezze@gmx.net>2016-02-21 11:48:45 +0100
commitcc24a339d8c0517259084b5c178d784626ba965c (patch)
tree9868e9687b5802ae0a3733712a3bbeb3bc75c953 /3rdparty/luv/examples/cqueues-main.lua
parentb5daabda5495dea5c50e17961ecfed2ea8619d76 (diff)
Merge remote-tracking branch 'refs/remotes/mamedev/master'
Second attempt
Diffstat (limited to '3rdparty/luv/examples/cqueues-main.lua')
-rw-r--r--3rdparty/luv/examples/cqueues-main.lua31
1 files changed, 31 insertions, 0 deletions
diff --git a/3rdparty/luv/examples/cqueues-main.lua b/3rdparty/luv/examples/cqueues-main.lua
new file mode 100644
index 00000000000..ff60ec2b1c9
--- /dev/null
+++ b/3rdparty/luv/examples/cqueues-main.lua
@@ -0,0 +1,31 @@
+--[[
+Demonstrates using luv with a cqueues mainloop
+]]
+
+local cqueues = require "cqueues"
+local uv = require "luv"
+
+local cq = cqueues.new()
+
+cq:wrap(function()
+ while cqueues.poll({
+ pollfd = uv.backend_fd();
+ timeout = uv.backend_timeout() / 1000;
+ events = "r";
+ }) do
+ uv.run("nowait")
+ end
+end)
+
+cq:wrap(function()
+ while true do
+ cqueues.sleep(1)
+ print("HELLO FROM CQUEUES")
+ end
+end)
+
+uv.new_timer():start(1000, 1000, function()
+ print("HELLO FROM LUV")
+end)
+
+assert(cq:loop())