lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Yeah,cool!That is what  exactly  I want.

On Sun, Nov 25, 2012 at 11:30 PM, Declan White <deco.da.man@gmail.com> wrote:
chuang <lichuang1982 <at> gmail.com> writes:

>
>
> I want to write a C module,when Lua call this module's spawn function,it
create a new Lua state,and the new Lua state can call its Lua function,like
this:
>
>
> require("qnode")
>
> function test(a)
>   print("in test")
>   print(a)
> end
>
> qnode.spawn(test, 100)
>
>
> but,when i review the Lua C API,seems there is no function to get the Lua
function from the Lua stack.
> So,how can I achieve this  purpose?
>
>
>
>

Take a look at LuaLanes ( https://github.com/LuaLanes/lanes ); it has a few C
functions to copy from Lua state to another.
(In fact, it may do exactly what you want your module to do: multiple Lua states
in separate threads with simple communication).

There's also my deep copy function, which you can find on lua-users (
http://lua-users.org/wiki/CopyTable ); although it is Lua-only, so you'll have
to find a way to convert it.

Regards,
Declan White.