Betrachten Sie dieses multi-threaded Programm:pdb kann nicht in einen anderen Thread einbrechen?
import threading
class SomeThread(threading.Thread):
def run(self):
a = 1
print a
def main():
print 'hola'
someThread = SomeThread()
someThread.start()
if __name__ == '__main__':
main()
Wenn ich debuggen dieses Programm mit pdb, an der Eingabeaufforderung ich an jedem ersten der beiden print-Anweisungen einen Haltepunkt gesetzt. Dann fahre ich fort. pdb bricht um print 'hola'
. Ich fahre fort und sehe den Effekt des Drucks in dem anderen Thread, aber pdb bricht nicht.
Die Hilfebefehle listen nichts auf, um Threadkontexte wie gdb zu wechseln ... also ... ist es in einem Threadkontext einfach nicht möglich, einen Haltepunkt zu setzen, der in einem anderen Kontext ausgelöst wird?