Intellij Debugger slow:方法断点可能会大大减慢调试速度

时间:2015-01-15 14:49:10

标签: intellij-idea

当我启动intellij调试器时,它会显示您在屏幕截图中看到的提示。 调试器需要很长时间才能启动。如何解决这个问题?enter image description here

8 个答案:

答案 0 :(得分:102)

关闭方法断点。您可以通过Run |查看所有断点查看断点(Ctrl - Shift -F8)

答案 1 :(得分:6)

enter image description here

从调试面板中关闭方法断点。 这是屏幕截图。

答案 2 :(得分:5)

在代码中查找红色菱形图标(而不是红色圆圈),它们表示方法断点。您很有可能在Kotlin的get()/ set()方法中设置它们。

答案 3 :(得分:3)

在IDEA 2017中引入了模拟方法断点:https://www.jetbrains.com/idea/whatsnew/#v2017-1-jvm-debugger 它们允许使用方法断点而不会降低性能。 默认情况下启用。

答案 4 :(得分:0)

来自JetBrains团队:“由于JVM设计,方法断点将大大降低调试器的速度,评估它们的成本很高。删除方法断点并考虑使用常规的行断点。”参见more

总而言之,似乎根本的问题是方法断点是通过使用 JDPA Method Entry Method Exit < / strong>功能。此实现要求JVM每次 any 线程进入 any 方法时以及 any 线程退出 any 时均触发事件。方法。

答案 5 :(得分:0)

我遵循的实用建议: 1.在应用程序启动时将所有断点静音 2.仅在调试流程时启用断点。

当然,如果您尝试调试应用程序启动过程中发生的情况,那将无济于事。

答案 6 :(得分:0)

就我而言,我使用了 Android Studio,当我在 method name line(称为 Java Method Break-Point)上设置 Break-Point 时,Android Studio 向我显示此警告并且调试非常缓慢...

removing this Break-Point 我的问题解决了...

enter image description here

enter image description here

答案 7 :(得分:-3)

查看断点 - (Ctrl - Shift -F8 ) 删除所有方法断点。 在调试模式下重新运行应用程序。 它的工作 f