调试器未从 Winpdb 分离
Debugger is not detaching from Winpdb
我正在使用 PythonQT 执行 python 脚本(因为我需要从 python 脚本调用 c++ 方法)
我的winpdb版本是1.4.6,机器是CetOS 6.5
现在我想在python脚本中启用调试
我已经在脚本中添加了 rpdb2.start_embedded_debugger('test')
并调用了 PythonQt.EvalFile()
函数,现在脚本正在等待调试器。
我已经从终端打开 winpdb UI 并附加到调试器。我能够执行“Next”、“Step into”等操作,并且所有局部变量都正确可见
但是当我试图分离调试器时,它并没有分离。状态显示“DETACHING”但没有任何反应,我什至无法关闭 winpdb。退出的唯一方法是杀死 winpdb。
如果我 运行 来自终端的同一个脚本文件它工作正常(python )并按预期分离。
通过查看日志我发现,如果我从终端 运行 调试通道被加密但是当来自 PythonQt 调试通道未加密时,不确定这与分离有任何关系
通过进一步查看 rpdb2.py 代码,我发现 Winpdb 挂在 request_go(self, fdetach = False)
的 self.getSession().getProxy().request_go(fdetach)
行:在 rpdb2.py
端口 51000 仍处于建立模式
请多多指教。
最后我使用最新版本的 python QT
解决了这个问题
我正在使用 PythonQT 执行 python 脚本(因为我需要从 python 脚本调用 c++ 方法)
我的winpdb版本是1.4.6,机器是CetOS 6.5
现在我想在python脚本中启用调试
我已经在脚本中添加了 rpdb2.start_embedded_debugger('test')
并调用了 PythonQt.EvalFile()
函数,现在脚本正在等待调试器。
我已经从终端打开 winpdb UI 并附加到调试器。我能够执行“Next”、“Step into”等操作,并且所有局部变量都正确可见 但是当我试图分离调试器时,它并没有分离。状态显示“DETACHING”但没有任何反应,我什至无法关闭 winpdb。退出的唯一方法是杀死 winpdb。
如果我 运行 来自终端的同一个脚本文件它工作正常(python )并按预期分离。
通过查看日志我发现,如果我从终端 运行 调试通道被加密但是当来自 PythonQt 调试通道未加密时,不确定这与分离有任何关系
通过进一步查看 rpdb2.py 代码,我发现 Winpdb 挂在 request_go(self, fdetach = False)
的 self.getSession().getProxy().request_go(fdetach)
行:在 rpdb2.py
端口 51000 仍处于建立模式
请多多指教。
最后我使用最新版本的 python QT
解决了这个问题