我正在使用PythonQT来执行python脚本(因为我需要从python脚本调用c ++方法)
我的winpdb版本是1.4.6,机器是CetOS 6.5
现在我想在python脚本中启用调试
我在脚本中添加了rpdb2.start_embedded_debugger('test')
并调用了PythonQt.EvalFile()
函数,现在脚本正在等待调试器。
我已从终端打开winpdb UI并附加到调试器。我可以执行“下一步”,“步入”等操作,并且所有局部变量都可以正确显示 但是当我试图分离调试器时,它没有分离。状态显示“DETACHING”并且没有发生任何事情,我甚至无法关闭winpdb。退出的唯一方法是kill winpdb。
如果我从终端运行相同的脚本文件,它正常工作(python)并按预期分离。
通过查看日志,我发现,如果我从终端运行,那么调试通道是加密的,但是当从PythonQt调试通道未加密时,不确定这与分离有任何关系
通过进一步查看rpdb2.py代码,我发现Winpdb挂在self.getSession().getProxy().request_go(fdetach)
的{{1}}行:rpdb2.py
端口51000仍处于已建立模式
请告诉我这个。
答案 0 :(得分:0)
最后我通过使用最新版本的python QT
解决了这个问题