In full stop mode (the only mode supported by currently released versions) GDB stops all threads as soon as any thread stops (due to a breakpoint or signal).
When you continue a stopped thread, all other threads will also continue if you do not set scheduler-locking on. Please note that any of step, nextetc. Continues the current (and therefore all other) stream (after setting a temporary breakpoint in the appropriate place, for example, on the next line for the command next).
Perhaps you want to be able to have a one-step stopped thread without resuming all other threads? In this case, the answer set scheduler-locking on.
Beware: if another thread holds the lock, you enable the scheduler lock, and your current thread also requires the same lock, your program will wait indefinitely. This often happens if one of the threads is inside malloc / realloc and your current statement is trying to allocate some memory.
set scheduler-locking off continue, - .