LUA 调用c#关于c#报错时lua调用堆栈的监听

static string GetLuaStackTrace(IntPtr L)

{

// 将 'debug' 表压入栈顶

xlua_getglobal(L, "debug");

// 获取 'debug.traceback' 函数

lua_pushstring(L, "traceback");

xlua_pgettable(L, -2);

// 移除 'debug' 表,现在 'traceback' 函数位于栈顶

lua_remove(L, -2);

// 将两个参数压入栈顶(第一个参数 message,第二个参数 level)

lua_pushstring(L, "");

lua_pushnumber(L, 2); // 注意这里我们使用 lua_pushnumber 来推送整数

// 调用 traceback 函数,期望 1 个返回值

lua_pcall(L, 2, 1, 0);

// 把返回的堆栈跟踪信息转换为 C# 字符串

string trace = lua_tostring(L, -1);

// 弹出栈顶的堆栈跟踪信息

lua_pop(L, 1);

复制代码
 // 返回堆栈跟踪信息
 return trace;

}

相关推荐
❆VE❆3 分钟前
python基础篇(一):使用vscode搭建python相关环境
开发语言·vscode·python
t***5447 分钟前
如何确认 Clang 是否在 Dev-C++ 中成功应用
java·开发语言·c++
神探小白牙10 分钟前
3D饼图,带背景图和自定义图例(threejs)
开发语言·前端·javascript·3d·vue
楚Y6同学11 分钟前
QT之下拉框自动填充功能
开发语言·c++·qt·qt开发技巧·串口下拉填充·网口下拉填充
Full Stack Developme11 分钟前
Hutool DFA 教程
开发语言·c#
xyq202412 分钟前
Bootstrap 滚动监听
开发语言
mjhcsp21 分钟前
根号快速计算牛顿迭代法
开发语言·c++·算法·迭代法
jiayong2321 分钟前
第 41 课:任务详情抽屉里的快速筛选联动
开发语言·前端·javascript·vue.js·学习
xiaoshuaishuai830 分钟前
【无标题】
开发语言·windows·c#