213
Views
3
Comments
Solved
What do Abort and Suspend actually do when debugging?
Question

When debugging, I only usually use Continue, Step Over, Step Into and Step Out. So what are the purposes of Abort and Suspend?


UPDATE:

Another one is "Break on All Exceptions". As per the documentation, it "forces the debugger to suspend the execution of threads when exceptions occur. " What does it mean?

2020-09-15 13-07-23
Kilian Hekhuis
 
MVP
Solution

Hi Francis,

"Abort" just kills the running program. It's useful when you're debugging and you're spotting the bug, and continuing is of no use. I've never used "Suspend", but it just halts the execution until you press "stop debugging". Afaik there's no way to resume from a Suspend.

"Break On All Exceptions" does exactly that: it breaks (i.e. halts the program and transfers focus to the debugger) when an Exception occurs, just before the Exception Handler is executed, even if you're not single stepping in the debugger.

UserImage.jpg
Francis Valero

Kilian Hekhuis wrote:

Hi Francis,

"Abort" just kills the running program. It's useful when you're debugging and you're spotting the bug, and continuing is of no use. I've never used "Suspend", but it just halts the execution until you press "stop debugging". Afaik there's no way to resume from a Suspend.

"Break On All Exceptions" does exactly that: it breaks (i.e. halts the program and transfers focus to the debugger) when an Exception occurs, just before the Exception Handler is executed, even if you're not single stepping in the debugger.


Thank you Kilian

2020-09-15 13-07-23
Kilian Hekhuis
 
MVP

You're most welcome :). I agree the documentation isn't very clear on this, there's room for improvement.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.