IWBN if gdb reprinted the prompt after asynchronous output (e.g. thread state changes). Even better would be to first delete the old prompt, print the asynchronous output, and then reprint the prompt (plus any text entered by the user up to that point). As things are today, the prompt can get lost in the middle of a lot of asynchronous output, and even if the user can find it s/he can be left confused as to whether gdb is waiting for input.
Yeah. I had a prototype patch for that somewhere ... *looks* ... here: https://www.sourceware.org/ml/gdb-patches/2012-11/msg00786.html