作者:KanwarGil
项目:trifle
func main() {
L := C.luaL_newstate()
defer C.lua_close(L)
C.luaL_openlibs(L) /* Load Lua libraries */
C.luaopen_cmsgpack(L)
sumS := C.CString(sum)
defer C.free(unsafe.Pointer(sumS))
C.luaL_loadstring(L, sumS)
msg, _ := msgpack.Marshal([]int{1, 2, 3, 4, 5, 6})
C.lua_pushstring(L, cptr(msg))
dstr := C.CString("mpdata")
defer C.free(unsafe.Pointer(dstr))
C.luaSetglobal(L, dstr)
C.luaExecute(L)
sum := C.lua_tonumber(L, -1)
fmt.Println(sum) // Output: 21
}
作者:ngocthanhi
项目:sk
// Closes the lua context.
func (e *ExecutionEngine) Destroy() {
if e.state != nil {
C.lua_close(e.state)
e.state = nil
}
if e.iterator != nil {
e.SetIterator(nil)
}
}
作者:szl
项目:golu
// lua_close
func (L *State) Close() {
C.lua_close(L.s)
}
作者:rdlaitil
项目:lea
// Destroys all objects in the given Lua state (calling the corresponding
// garbage-collection metamethods, if any) and frees all dynamic memory
// used by this state. On several platforms, you may not need to call
// this function, because all resources are naturally released when the
// host program ends. On the other hand, long-running programs, such as
// a daemon or a web server, might need to release states as soon as they
// are not needed, to avoid growing too large.
func (this *State) Close() {
C.lua_close(this.luastate)
}
作者:aarzill
项目:golu
// lua_close
func (L *State) Close() {
C.lua_close(L.s)
unregisterGoState(L)
}
作者:halturi
项目:luaji
// Destroys all objects in the given Lua state (calling the corresponding
// garbage-collection metamethods, if any) and frees all dynamic memory
// used by this state. On several platforms, you may not need to call
// this function, because all resources are naturally released when the
// host program ends. On the other hand, long-running programs, such as
// a daemon or a web server, might need to release states as soon as they
// are not needed, to avoid growing too large.
func (s *State) Close() {
C.lua_close(s.l)
}
作者:reuse
项目:lu
// Close close the lua vm
func (l *Lua) Close() {
C.lua_close(l.State)
}
作者:gooop
项目:glu
// 释放lua_stat
func (L *State) free() {
log.Printf("Free %v.\n", *L)
C.lua_close(L.s)
}
作者:hxyx
项目:goinf
func (vm *VM) Close() {
C.lua_close(vm.globalL)
vm.globalL = nil
}
作者:vro
项目:lu
func Close(s *State) {
C.lua_close((*C.lua_State)(s))
}