1

Lua レーンを使用して Lua モジュールから C 関数を呼び出そうとすると、制御が「C」関数に転送されません。Lua-lanes が外部の C dll でスレッド化された方法で動作しないという問題はありますか?

以下はコードスニペットです

Lua スニペット:

lanes.gen("*",func)
thread = func()
thread:join()

function func()
    foo() -- expected to print "Hello world", by 
          -- calling below C function,but not happening
end

VS-2012 で dll にコンパイルされた C スニペット:

static int foo(lua_state *L)
{
   printf("Hello world\n")
}
4

2 に答える 2

1

レーンの使い方が間違っています。これはあなたがする必要があることです:

function func()
    foo() -- expected to print "Hello world", by 
          -- calling below C function,but not happening
end

local launcher = lanes.gen("*", func)
thread = launcher()
thread:join()

それはうまくいくはずです。

于 2013-09-28T15:51:25.510 に答える