1.mobdebug
mobdebug 实现的核心:
debug.sethook
coroutine
通过一个协程用于网络监听和命令获取
通过debug.sethook 在每次执行函数的时候,回调到debugHook函数, 在hook函数中,执行loop协程,获取网络命令
mobdebug存在三个问题:
- 没有办法attach,可以通过在lua虚拟机中动态加载执行lua代码的方式,来动态启动mobdebug
- 没有办法pause,这个可以终止debug执行,接着重新attach的方案来处理 -主线程卡主,则loop无法执行,可以外部执行代码来终止loop的执行
因此需要额外实现一个其它层语言的线程监控,可以简单的在csharp实现即可