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;

}

相关推荐
lsx2024062 分钟前
PHP MySQL Order By
开发语言
笑春风oO2 分钟前
使用国内镜像源加速Qt“更新/安装”的方法【Ubuntu篇】
开发语言·qt
asdzx673 分钟前
Python: 从 PPT 提取图片和文本
开发语言·python·powerpoint
枫叶丹43 分钟前
【HarmonyOS 6.0】AVCodec Kit 同步模式视频编解码深度解析:从API演进到高性能实战
开发语言·华为·harmonyos·视频编解码
jjjava2.06 分钟前
计算机体系与进程管理全解析
java·开发语言
AI人工智能+电脑小能手7 分钟前
【大白话说Java面试题】【Java基础篇】第5题:HashMap的底层原理是什么
java·开发语言·数据结构·后端·面试·hash-index·hash
谢谢 啊sir9 分钟前
L1-120 智慧文本编辑器 - java
java·开发语言
sycmancia14 分钟前
Qt——缓冲区操作与目录操作
开发语言·qt
AIGC设计所14 分钟前
网络安全SRC漏洞挖掘学习路线 - 第四期:常见漏洞挖掘实操,实现首次挖洞突破
开发语言·网络·学习·安全·web安全
就叫飞六吧15 分钟前
在线考试翻页抓取题目导出js
开发语言·前端·javascript