我正在使用Eclipse插件PyDev,并尝试在后台线程中设置断点。尽管代码正在执行,但断点从未被触发。这是一个小例子:
import thread
def go(count):
print 'count is %d.' % count # set break point here
print 'calling from main thread:'
go(13)
print 'calling from bg thread:'
thread.start_new_thread(go, (23,))
raw_input('press enter to quit.')
那个示例中的断点在主线程调用时会被触发,但在后台线程调用时不会触发。我能做些什么吗?还是这是PyDev调试器的限制?
更新
感谢您提供的解决方法。我提交了一个PyDev功能请求,并已完成。它将在版本1.6.0中发布。谢谢,PyDev团队!
pydevd.settrace(suspend=False)
才能使其正常工作。你的修复程序是否也适用于使用threading创建的线程(而不是thread)? - studgeek