diff options
| author | ruki <[email protected]> | 2025-08-28 23:14:13 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2025-08-28 23:14:13 +0800 |
| commit | 628371d0edea22eb177fa2b1a6b9f28e8c0cff2d (patch) | |
| tree | 2c8e834e76870f3cfa2e2b2b3b3342d69b0f83bf /core/src/xmake/engine.c | |
| parent | 8a331ab64fe560924b8bc3ab3dc4ac2831dd8920 (diff) | |
add thread queue
Diffstat (limited to 'core/src/xmake/engine.c')
| -rw-r--r-- | core/src/xmake/engine.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/core/src/xmake/engine.c b/core/src/xmake/engine.c index 850be59f4..d3d48c7cc 100644 --- a/core/src/xmake/engine.c +++ b/core/src/xmake/engine.c @@ -368,6 +368,15 @@ tb_int_t xm_thread_semaphore_post(lua_State* lua); tb_int_t xm_thread_semaphore_wait(lua_State* lua); tb_int_t xm_thread_semaphore_incref(lua_State* lua); +// the thread/queue functions +tb_int_t xm_thread_queue_init(lua_State* lua); +tb_int_t xm_thread_queue_exit(lua_State* lua); +tb_int_t xm_thread_queue_size(lua_State* lua); +tb_int_t xm_thread_queue_clear(lua_State* lua); +tb_int_t xm_thread_queue_incref(lua_State* lua); +tb_int_t xm_thread_queue_push(lua_State* lua); +tb_int_t xm_thread_queue_pop(lua_State* lua); + // open cjson __tb_extern_c_enter__ tb_int_t luaopen_cjson(lua_State *l); @@ -678,6 +687,13 @@ static luaL_Reg const g_thread_functions[] = , { "semaphore_post", xm_thread_semaphore_post } , { "semaphore_wait", xm_thread_semaphore_wait } , { "semaphore_incref", xm_thread_semaphore_incref } +, { "queue_init", xm_thread_queue_init } +, { "queue_exit", xm_thread_queue_exit } +, { "queue_size", xm_thread_queue_size } +, { "queue_clear", xm_thread_queue_clear } +, { "queue_incref", xm_thread_queue_incref } +, { "queue_push", xm_thread_queue_push } +, { "queue_pop", xm_thread_queue_pop } , { tb_null, tb_null } }; |
