调试和计数断点命中数

2022-09-02 03:54:20

有时,当我检查我没有编写的代码时,我会在调试模式下启动eclipse,并使用数字来理解程序。例如,如果它们是从数据库中检索到的 n 个项目,则知道服务中有 n 个已处理的项目会很有趣,等等。

当使用循环时,事情变得更加复杂:如果我们处于“while”循环中,则不会定义执行次数,如果有替代方案,则执行流可能会发生很大变化。

为此,我有时会在部分代码中设置断点,并计算到达该断点的次数。

当然,这不是很方便,我想知道是否有办法计算断点命中数。我知道Eclipse可以在固定数量的命中后暂停执行,但我只想让Eclipse在正常的执行流中计算它们。

我很高兴听到你对此的看法。

谢谢!


答案 1

可以在断点中添加条件。最简单的一个可能看起来像这样:

System.err.println("Passing checkpoint");
return false;

您还可以通过调用自己的静态类来扩展它:

org.foo.StaticCounter.COUNTER++;
System.err.println("Passing checkpoint " + org.foo.StaticCounter.COUNTER);
return false;

答案 2

作为计算断点的替代方法,可以使用分析工具,如此处的工具。