我正在使用 Windows 10 上的 PyCharm (PyCharm Community Edition 2016.2.2;Build #PC-162.1812.1,构建于2016年8月16日;JRE:1.8.0_76-release-b216 x86;JVM:由 JetBrains s.r.o 提供的 OpenJDK Server VM
) 调试一个 Python (3.5
) 程序。
问题:在某些断点处停止时,调试器窗口会卡在“正在收集数据”的状态下,最终超时。
要显示的数据既不特殊也不是特别大。它在 PyCharm 中某种程度上是可用的,因为在一些数据的值上设置条件断点可以正常工作(程序会中断)——看起来只是为了显示而收集数据的过程失败了(与操作目的不同)。
当我进入到我设置断点的位置周围的一个函数时,它的数据被正确地显示出来了。当我返回到调用函数(我从哪里下来并且最初想设置断点的函数)时,我再次卡在“正在收集数据”的超时状态下。
至少自2005年以来,已经有许多类似的问题提出。一些已经修复了,一些没有。这些修复通常是更新到最新版本(我已经有最新版本了)。
是否有一般方向可以解决或者解决这类问题?
编辑:一年后,问题仍然存在,开发人员/支持人员在提出错误后仍然没有反应。
编辑于2018年4月:看起来问题已经在2018.1版本中得到了解决,下面的代码设置了一个断点在print
行上时会挂起,现在已经可以正常工作(我可以看到变量):
import threading
def worker():
a = 3
print('hello')
threading.Thread(target=worker).start()