Skip to content
Advertisement

How to catch new thread in gdb console mode?

I am running my Qt app from gdb, and i want to stop when new threads creates. (when gdb prints message [New Thread address (LPW number)].

I have set breakpoint b __pthread_create_2_1. That allows me to catch most of new threads prints. but i still got few new threads that are not catched. What else can i do to catch their creation?

Advertisement

Answer

Probably what you want is catch syscall clone (see here https://sourceware.org/gdb/onlinedocs/gdb/Set-Catchpoints.html)

Also by default gdb let other threads continue their execution if a breakpoint or catchpoint event occurs. So maybe you want to take a look at the All-Stop mode (https://sourceware.org/gdb/onlinedocs/gdb/Thread-Stops.html)

User contributions licensed under: CC BY-SA
10 People found this is helpful
Advertisement