python - 调试器在 "Collecting data..."处超时

标签 python python-3.x debugging pycharm python-3.5

我正在使用 PyCharm 调试 Python (3.5) 程序(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 服务器 VM)在 Windows 10 上。

问题:当在某些断点处停止时,调试器窗口停留在“收集数据”,最终超时。(无法显示帧变量)

要显示的数据既不特殊,也不是特别大。 PyCharm 可以以某种方式使用它,因为上述数据的某些值的条件断点工作正常(程序中断)——看起来收集它仅用于显示(而不是操作目的)的过程失败了。

当我在我的断点附近进入一个函数时,它的数据会正确显示。当我进入堆栈(到调用函数,我退出的函数以及我最初想要设置断点的位置)时 - 我再次遇到“收集数据”超时问题。

至少自 2005 年以来,针对同一点提出了许多问题。有些已修复,有些未修复。修复通常是更新到最新版本(我有)。

是否有一个大方向可以帮助我解决或解决这一系列问题?


编辑:一年后问题仍然存在,并且在错误出现后开发人员/支持人员仍然没有任何反应。


2018 年 4 月编辑:看起来问题已在 2018.1 版本中解决,在 print 行上设置断点时挂起的以下代码现在有效(我可以看到变量):

import threading

def worker():
    a = 3
    print('hello')

threading.Thread(target=worker).start()

最佳答案

我在使用pycharm2018.2调试我的web应用程序时遇到了同样的问题。

该项目是一个结合了SocketIO的复杂的flask web服务器。

当我在代码中创建一个调试断点然后按下调试按钮时,它停在断点处,但变量没有加载。它只是收集数据数据。最后我对调试器设置做了一些调整,这让它起作用了。请参阅下图以了解要更改的设置:

Image

关于python - 调试器在 "Collecting data..."处超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39371676/

相关文章:

python - 连接几个文件删除标题行

python - django 唯一对象(不是唯一字段)?

python - Pandas:将逗号分隔的列转换为多列

c++ - 为什么我的C++程序崩溃了。我是圆括号的实现问题

python - python中TCP连接的网络资源[Windows]

python - 使用两个字典映射列

python - 强制对可迭代对象进行所有迭代

python-3.x - Python、 PuLP : Turning a LpVariable into an integer

java - 无法打开文件进行读取

debugging - map 文件规范?