Io uso ipdb.set_trace()
ogni volta che ho bisogno di impostare un punto di interruzione nel mio codice. In questo momento, sto cercando di usarlo in un processo che ho creato usando multiprocessing
, mentre il codice si ferma, non posso digitare nulla per continuare il debug. C'è un modo per ottenere il mio stdin
diretto correttamente?Come utilizzare ipdb.set_trace in un processo a forcella
Idealmente, mi piacerebbe immaginare una nuova console che si apre ogni volta che un processo biforcato viene interrotto per il debug, tuttavia non penso sia possibile.
Sarebbe bello se si verifica la risposta data da @ yoav-glazner. Sei in grado di usare la tastiera dopo aver cambiato _multiprocessing_ di _dummy_ ?. – jgomo3
@ jgomo3 Ho confermato che funziona, ma io (personalmente) non ritengo che risponda alla mia domanda – Seanny123
Suppongo per il fatto che dovevi cambiare il codice ogni volta che vuoi eseguire il debug. Si potrebbe obiettare che lo fai già con pdb.set_trace(), ma so che sei caduto dovrebbe essere un altro modo per ottenere lo stesso senza cambiare il codice. Mi chiedo se c'è un modo per dire a pdb di usare dummy invece di multiprocessing per l'importazione multiprocessing? Una sorta di monkeypatching/mocking per il debugging. – jgomo3