I'm using multi-threaded code and PDB doesn't stop on manually set breakpoints:
(pdb) b filename:lineno
(pdb) c  # Runs without stopping
What could be the reason why?
I'm using multi-threaded code and PDB doesn't stop on manually set breakpoints:
(pdb) b filename:lineno
(pdb) c  # Runs without stopping
What could be the reason why?
 
    
    As of September 2020, Python's pdb debugger does not support multi-threading.
Attempting to break on a different thread from where pdb started, will skip the breakpoints. This is due to the current implementation using sys.settrace() which is thread-specific.
There's a ticket for implementing this functionality among other multi-threading additions.
Currently, the only option is to pdb.set_trace() on the same thread being debugged.
 
    
    Instead of pdb use e.g. web-pdb.
