博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
开源 lua 调试器
阅读量:5154 次
发布时间:2019-06-13

本文共 862 字,大约阅读时间需要 2 分钟。

支持调试纯脚本以及调试嵌入方式使用的lua脚本, 仅仅为远程调试(socket通讯)。

类似GDB的使用方式。
项目地址:
详细文档地址:    - 最新更新

它是什么:

是一个lua 的远程调试器。

使用平台:

Windows 与 Linux

简略的说明:

文件lxdebug.lua为被调试者
文件ldbclient.lua为调试者

适用场合、范围:

    1. 被调试端是纯脚本。 此时切记在脚本最开始执行的地方如此写:
local ldb = require"lxdebug"
ldb.debug_pure_lua() --此函数在lxdebug.lua里定义,切记先明白何时调用何种接口。 参数为端口。若不指定,则端口为0xdeb。端口被占用则会无法启动,并有错误日志。
2. 被调用者存在逻辑帧的概念。(可以理解为间隔比较小的时间,比如数百ms之内, 会重复进入某个函数)。 此时最好别用纯脚本的调试接口,因为他不支持高速模式。所谓高速模式:当存在逻辑帧概念的时候,会根据断点有效情况等,来决定是否hook行事件,若无断 点,则其额外开销极小,就是在逻辑帧函数中做一下检测,而不是执行每行时都检测下。使用方法如下:
初始化的文件中:
local ldb = require"lxdebug"
ldb.startdebug_use_loopfunc()--可以传入端口;默认为0xdeb
在逻辑帧执行的函数中执行如下函数: ldb.debug_runonce()
当要停止当前的调试行为或者要清除,则调用: ldb.stopdebug()

注意:

若在win下跑调试者,则有个问题注意下。 若当前系统控制台为本地编码,而远端被调试者脚本代码为utf8编码,那么l以及其他会显示文件内容的命令会为乱码。 若在Linux下跑调试者,因为linux终端默认(大多数吧)就是utf8,这样也要注意,远端脚本存utf8比较好。 具体看使用者。  

转载于:https://www.cnblogs.com/lcinx/p/10570703.html

你可能感兴趣的文章
区块链开发金融交易平台
查看>>
Android 滑动效果
查看>>
算法学习笔记1.3.1 素数筛法
查看>>
【C++】隐式类型转换和 explicit关键字
查看>>
【ES】学习2-搜索
查看>>
初识springboot
查看>>
分库分表
查看>>
GIS坐标方面术语
查看>>
ANDROID内存优化(大汇总——中)
查看>>
3.3 idea中使用git遇到的一些问题
查看>>
windows应用程序配置log4net日志记录
查看>>
Unity3D For Android 开发教程【转http://game.ceeger.com/Unity/Doc/2011/Unity3D_For_Android.html】...
查看>>
Map集合HashMap,TreeMap
查看>>
用 1,2,2,3,4,5 六个数字,打印出所有不同的排列,要求:"4"不能在第三位,"3"与"5"不能相连...
查看>>
10道典型的JavaScript面试题
查看>>
c# 对象类型、对象总结 ref、out关键字
查看>>
python random模块
查看>>
javascript 和php的要点概括
查看>>
国际聚餐--DDM组圣诞party
查看>>
操作系统
查看>>