From cef9a7a112a8322e2c6498021df59e4a8f7b5246 Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Tue, 4 Feb 2014 11:06:17 +0400 Subject: Add. `thread:alive()` method. --- test/test_alive.lua | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 test/test_alive.lua (limited to 'test/test_alive.lua') diff --git a/test/test_alive.lua b/test/test_alive.lua new file mode 100644 index 0000000..ecce163 --- /dev/null +++ b/test/test_alive.lua @@ -0,0 +1,35 @@ +local llthreads = require"llthreads" +local utils = require "utils" +local sleep = utils.sleep + +local include = utils.thread_init .. [[ +local llthreads = require"llthreads" +local sleep = require "utils".sleep +]] + +local thread = llthreads.new(include .. [[ + sleep(5) + return 1,2,3 +]]) + +assert(nil == thread:alive()) + +thread:start() + +assert(true == thread:alive()) + +for i = 1, 10 do + if not thread:alive() then break end + sleep(1) +end + +assert(false == thread:alive()) + +local ok,a,b,c = thread:join(0) +assert(ok == true) +assert(a == 1) +assert(b == 2) +assert(c == 3) + +print("Done!") + -- cgit v1.2.3-55-g6feb