gdb时经常发生找不到源文件的情况,使用下面命令
dir /home/build/thirdparty/lua/src
就可以解决。
前段时间项目频繁发生宕机,从宕机日志中也看不出什么端倪,最终地毯式排查,把lua中一些乱用的C函数修正后,宕机问题就解决了
int addCopyMap(lua_State* L)
{
ILuaInterfacePtr pinterface = CLuaMgr::getInstance()->getLuaInterface();
if (pinterface == NULL)
{
return -1;
}
uint32 ncopyid = luaL_checkinteger(L, 1);
uint32 ninstanceid = luaL_checkinteger(L, 2);
uint16 nscene = luaL_checkinteger(L, 3);
uint8 nmapid = luaL_checkinteger(L, 4);
return pinterface->addCopyMap(ncopyid, ninstanceid, nscene, nmapid);
}
改后:
int addCopyMap(lua_State* L)
{
ILuaInterfacePtr pinterface = CLuaMgr::getInstance()->getLuaInterface();
if (pinterface == NULL)
{
return -1;
}
uint32 ncopyid = luaL_checkinteger(L, 1);
uint32 ninstanceid = luaL_checkinteger(L, 2);
uint16 nscene = luaL_checkinteger(L, 3);
uint8 nmapid = luaL_checkinteger(L, 4);
pinterface->addCopyMap(ncopyid, ninstanceid, nscene, nmapid);
return 0; // 这个是这个函数返回的参数个数,不能随便写
}