Debuggers are not great when you have a bug that occurs between multiple CPU cores, hardware device timing, etc.
In those cases, a debugger just can't stop the world, so back to printf it is.
In those cases, a debugger just can't stop the world, so back to printf it is.
Also time traveling debuggers like WinDbg and rr are the ideal way to debug complex timing issues.
True, but this can be worked around for example with lock free ring buffers etc.
> Also time traveling debuggers like WinDbg and rr are the ideal way to debug complex timing issues.
When applicable rr can be great indeed. Not sure how to apply TTD tools for example in kernel context.
Nice to see Microsoft continues improving WinDbg. (Shame Visual Studio's debugger is so weak in comparison.)