diff options
-rw-r--r-- | README.md | 2 | ||||
-rw-r--r-- | rockspecs/lua-llthreads2-0.1.0-1.rockspec | 44 | ||||
-rw-r--r-- | rockspecs/lua-llthreads2-compat-0.1.0-1.rockspec | 44 | ||||
-rw-r--r-- | src/llthread.c | 2 |
4 files changed, 90 insertions, 2 deletions
@@ -15,7 +15,7 @@ This is full dropin replacement for [llthreads](https://github.com/Neopallium/lu | |||
15 | * thread:join() method support arbitrary timeout on Windows threads | 15 | * thread:join() method support arbitrary timeout on Windows threads |
16 | * set_logger function allow logging errors (crash Lua VM) in current llthread's threads | 16 | * set_logger function allow logging errors (crash Lua VM) in current llthread's threads |
17 | * thread:start() has additional parameter which control in which thread child Lua VM will be destroyed | 17 | * thread:start() has additional parameter which control in which thread child Lua VM will be destroyed |
18 | * allow pass cfunctions to child thread (e.g. to initialize Lua state) (experemental) | 18 | * allow pass cfunctions to child thread (e.g. to initialize Lua state) |
19 | 19 | ||
20 | ##Usage | 20 | ##Usage |
21 | 21 | ||
diff --git a/rockspecs/lua-llthreads2-0.1.0-1.rockspec b/rockspecs/lua-llthreads2-0.1.0-1.rockspec new file mode 100644 index 0000000..9116d6a --- /dev/null +++ b/rockspecs/lua-llthreads2-0.1.0-1.rockspec | |||
@@ -0,0 +1,44 @@ | |||
1 | package = "lua-llthreads2" | ||
2 | version = "0.1.0-1" | ||
3 | source = { | ||
4 | url = "https://github.com/moteus/lua-llthreads2/archive/v0.1.0.zip", | ||
5 | dir = "lua-llthreads2-0.1.0", | ||
6 | } | ||
7 | description = { | ||
8 | summary = "Low-Level threads for Lua", | ||
9 | homepage = "http://github.com/moteus/lua-llthreads2", | ||
10 | license = "MIT/X11", | ||
11 | detailed = [[ | ||
12 | This is drop-in replacement for `lua-llthread` module but the module called `llthreads2`. | ||
13 | In additional module supports: thread join with zero timeout; logging thread errors with | ||
14 | custom logger; run detached joinable threads; pass cfunctions as argument to child thread. | ||
15 | ]], | ||
16 | } | ||
17 | dependencies = { | ||
18 | "lua >= 5.1, < 5.3", | ||
19 | } | ||
20 | build = { | ||
21 | type = "builtin", | ||
22 | platforms = { | ||
23 | unix = { | ||
24 | modules = { | ||
25 | llthreads2 = { | ||
26 | libraries = {"pthread"}, | ||
27 | } | ||
28 | } | ||
29 | }, | ||
30 | windows = { | ||
31 | modules = { | ||
32 | llthreads2 = { | ||
33 | libraries = {"kernel32"}, | ||
34 | } | ||
35 | } | ||
36 | } | ||
37 | }, | ||
38 | modules = { | ||
39 | llthreads2 = { | ||
40 | sources = { "src/l52util.c", "src/llthread.c" }, | ||
41 | defines = { "LLTHREAD_MODULE_NAME=llthreads2" }, | ||
42 | } | ||
43 | } | ||
44 | } \ No newline at end of file | ||
diff --git a/rockspecs/lua-llthreads2-compat-0.1.0-1.rockspec b/rockspecs/lua-llthreads2-compat-0.1.0-1.rockspec new file mode 100644 index 0000000..0c058ea --- /dev/null +++ b/rockspecs/lua-llthreads2-compat-0.1.0-1.rockspec | |||
@@ -0,0 +1,44 @@ | |||
1 | package = "lua-llthreads2-compat" | ||
2 | version = "0.1.0-1" | ||
3 | source = { | ||
4 | url = "https://github.com/moteus/lua-llthreads2/archive/v0.1.0.zip", | ||
5 | dir = "lua-llthreads2-0.1.0", | ||
6 | } | ||
7 | description = { | ||
8 | summary = "Low-Level threads for Lua", | ||
9 | homepage = "http://github.com/moteus/lua-llthreads2", | ||
10 | license = "MIT/X11", | ||
11 | detailed = [[ | ||
12 | This is drop-in replacement for `lua-llthread` module. | ||
13 | In additional module supports: thread join with zero timeout; logging thread errors with | ||
14 | custom logger; run detached joinable threads; pass cfunctions as argument to child thread. | ||
15 | ]], | ||
16 | } | ||
17 | dependencies = { | ||
18 | "lua >= 5.1, < 5.3", | ||
19 | } | ||
20 | build = { | ||
21 | type = "builtin", | ||
22 | platforms = { | ||
23 | unix = { | ||
24 | modules = { | ||
25 | llthreads = { | ||
26 | libraries = {"pthread"}, | ||
27 | } | ||
28 | } | ||
29 | }, | ||
30 | windows = { | ||
31 | modules = { | ||
32 | llthreads = { | ||
33 | libraries = {"kernel32"}, | ||
34 | } | ||
35 | } | ||
36 | } | ||
37 | }, | ||
38 | modules = { | ||
39 | llthreads = { | ||
40 | sources = { "src/l52util.c", "src/llthread.c" }, | ||
41 | defines = { "LLTHREAD_MODULE_NAME=llthreads" }, | ||
42 | } | ||
43 | } | ||
44 | } \ No newline at end of file | ||
diff --git a/src/llthread.c b/src/llthread.c index 27253e5..ac485e3 100644 --- a/src/llthread.c +++ b/src/llthread.c | |||
@@ -5,7 +5,7 @@ | |||
5 | #define LLTHREAD_VERSION_MAJOR 0 | 5 | #define LLTHREAD_VERSION_MAJOR 0 |
6 | #define LLTHREAD_VERSION_MINOR 1 | 6 | #define LLTHREAD_VERSION_MINOR 1 |
7 | #define LLTHREAD_VERSION_PATCH 0 | 7 | #define LLTHREAD_VERSION_PATCH 0 |
8 | #define LLTHREAD_VERSION_COMMENT "dev" | 8 | #define LLTHREAD_VERSION_COMMENT "" |
9 | 9 | ||
10 | #ifndef USE_PTHREAD | 10 | #ifndef USE_PTHREAD |
11 | # include <windows.h> | 11 | # include <windows.h> |