For vanilla use-cases, the debugger on Visual Studio or Jetbrains IDEs may have more features and better usability.
I think some even support reverse debugging or time travel (rr-like), memory watchpoints, etc.
Pause execution when some memory is read or written to = watchpoint.
For reverse engineering you've got OllyDbg clones like edb or x64dbg and others.
And there is the underworld of gdb custom scripts that is really interesting looking into. gdb tui too.
For vanilla use-cases, the debugger on Visual Studio or Jetbrains IDEs may have more features and better usability.
I think some even support reverse debugging or time travel (rr-like), memory watchpoints, etc.
Pause execution when some memory is read or written to = watchpoint.
For reverse engineering you've got OllyDbg clones like edb or x64dbg and others.
And there is the underworld of gdb custom scripts that is really interesting looking into. gdb tui too.