1

我正在尝试找到一种干净的方法来查找经过的时间。换句话说,我想找出执行给定代码段所需的时间。

我知道以下两种方法:-

1>

long start = System.nanoTime();
// Code to measure
long elapsedTime = System.nanoTime() - start;

2>

long start = System.currentTimeMillis();
// Code to measure
long elapsedTime = System.currentTimeMillis() - start;

但是这两种方法是肮脏的,因为我必须用我的基准测试代码乱扔原始代码,稍后当基准测试结束时,我将不得不记住删除代码。

我正在寻找一种受 Eclipse/任何其他 IDE 支持的更简洁的方法,在该方法中,我标记了我想要进行基准测试的代码,就像我们指定断点一样,Eclipse 会在到达该部分代码时向我显示经过的时间。

Eclipse/任何其他 IDE 中是否有任何此类方法可用?

4

3 回答 3

1

我推荐 Perf4j perf4j.codehaus.org

于 2012-05-06T03:22:46.303 回答
0

您可以为代码编写 JUnit 测试。Eclipse 的 JUnit 插件将向您显示运行测试所花费的时间。

于 2012-05-05T15:28:58.497 回答
0

在班级顶部设置一个字段

private static final boolean DEBUG_THIS=true;

然后当你有你想使用的线路时,把它们放在这样的地方:

if (DEBUG_THIS){
    Log.v("Tag","It took " + System.currentTimeMillis() - start + " ms");
    // perhpas some other debug code
}

然后当你累了或者做完调试的时候,把最上面的那一行代码改一下

private static final boolean DEBUG_THIS=false;

您可以将所有调试代码留在原处,如果您再次需要它,并且在运行版本中不会花费您任何费用。

于 2012-05-05T15:12:16.980 回答