Wednesday, June 12, 2019

Conditional breakpoints are extremely slow

Today I was investigating an issue in a JVM application (written in Kotlin but JVM-based nonetheless) and added a conditional breakpoint in IntelliJ to stop at a loop iteration I was interested in. That worked as intended, but I noticed that the program then took dramatically longer to run and that the icon of the Debugger tab in the lower left blinked several times. If I understand correctly, a conditional breakpoint needs to break into the debugger every time, evaluate the condition, and resume execution if appropriate. If I needed the conditional-stop to work faster, I would have added an if statement to the code and set a normal breakpoint on a statement inside that to avoid unnecessary debugger entrances.

No comments:

Post a Comment