PDB 不会在多线程代码中的断点处停止
PDB doesn't stop on breakpoint in multithreaded code
我正在使用多线程代码,PDB 不会在手动设置断点时停止:
(pdb) b filename:lineno
(pdb) c # Runs without stopping
可能是什么原因?
截至 2020 年 9 月,Python 的 pdb 调试器不支持 multi-threading。
尝试在 pdb 启动的不同线程上中断,将跳过断点。这是由于当前使用 sys.settrace()
的实现,即 thread-specific.
有一个 ticket 用于实现此功能以及其他 multi-threading 添加。
目前,唯一的选择是 pdb.set_trace()
在正在调试的同一个线程上。
而不是 pdb
使用例如web-pdb
.
我正在使用多线程代码,PDB 不会在手动设置断点时停止:
(pdb) b filename:lineno
(pdb) c # Runs without stopping
可能是什么原因?
截至 2020 年 9 月,Python 的 pdb 调试器不支持 multi-threading。
尝试在 pdb 启动的不同线程上中断,将跳过断点。这是由于当前使用 sys.settrace()
的实现,即 thread-specific.
有一个 ticket 用于实现此功能以及其他 multi-threading 添加。
目前,唯一的选择是 pdb.set_trace()
在正在调试的同一个线程上。
而不是 pdb
使用例如web-pdb
.