stuartwang

Results 47 comments of stuartwang

感谢关注到这么细节的问题。 我自己在使用的时候也发现有跳步的问题,也就是运行到某个代码之后会因为 stepOverCounter 未清零导致stepover变成 continue。 这里可能需要仔细调一下,但目前工作比较忙,后面我抽空再处理下

可以帮我截一张图我看下吗?

分别解释下两个问题哈 1. 每次启动unity后需要重Run调试器 目前机制是这样的:unity停止运行后会关闭lua虚拟机,调试器前端(vscode)发现断开连接后会停止运行。所以下次调试时需要用户手动在Vscode里Run一下才能够重新连接。 有的调试器在连接断开后不会停止运行,会继续等待下一次连接。这样用户不用反复Run调试器,体验也会好一些。不过最近太忙了,以后有时间会做优化。 ps. 关于提到3.1版本在停止运行后再次启动可以直接开始调试,是否使用的是xlua框架。我之前在测试时发现xlua在Unity Editor中停止游戏运行之后,lua虚拟机还在继续运行,和调试器连接也没有断开,但这里没有做深究。 2. 发现是调试器服务端收到一个连接后就close了 调试器前端(Vscode)和 后端(lua端)的连接应该是一对一的。之前我们遇到过在建立起调试连接之后,因为设置错误,另一个引擎的调试器后端也连接过来了,导致调试数据乱掉。 为了避免这种情况,在建立起一条链接之后,关闭server (已建立的连接会保持)。调试停止时才会重开server.listen。 ![image](https://user-images.githubusercontent.com/16960038/110664586-7fc38e80-8202-11eb-885a-8a25d143316f.png) 所以这行代码是做异常处理用的,即使注释掉也不会影响功能。以后做自动重连的时候我再梳理这个逻辑吧

我最近查了一下,这里确实没还有想到好的处理办法,有空的时候我再研究下

Thanks for suggestion. We will do compatibility test for MoonJIT when support Luajit.

看表现是调试器 VSCode 端和 lua 端没有建立起连接。升级到3.2.0之后可以在启动调试之后在 Debug Console 中看到如下图 第一行[Listening] 是用户点击Vscode中的 Run, 只要VSCode端LuaPanda插件正常启动,都会打印出。 第二行[Connected] 是VSCode LuaPanda插件和 lua 端调试器建立起网络连接之后,就会打印出的。 ![image](https://user-images.githubusercontent.com/16960038/100495954-2c658d00-318b-11eb-83b8-c74f7efa1cab.png) 可以看下这两行是否都输出了,如果第一行没有输出,可以检查下蓝框中显示是否正常。 ![image](https://user-images.githubusercontent.com/16960038/100496059-f07ef780-318b-11eb-853d-a7515cd3f3d6.png) 如果Run VScode , 并且运行lua 进程后,第二行[Connected]没有输出,可以检查下 LuaPanda.lua 文件是否存在,require("LuaPanda").start() 是否被调用,以及用户日志(unity , ue)中是否出现了...

Thanks for the issue. We already check code and locate the error. We will take some time to reproduce this error, understand why the problem occurs, so as to fix...

其实检索工作区文件的目的是为了通过生成 文件名-文件完整路径的索引,后续调试时即使只有文件名也可以查找到对应文件。 我看花费了51s , 确实比较耗时,确实应该加上 exclude, 后续如果有版本更新我把这个加上