我想测试我的应用程序,我知道在java中有一个返回执行时间的某个方法,但我找不到它。任何提示?
答案 0 :(得分:1)
long startTime = new Date().getTime();
doSomething();
long endTime = new Date().getTime();
System.out.println("elapsed milliseconds: " + (endTime - startTime));
答案 1 :(得分:1)
long startTime = System.currentTimeMillis();
//...
long entTime = System.currentTimeMillis();
long spentTime = endTime - startTime;
答案 2 :(得分:1)
long start = System.currentTimeMillis();
//long start = System.nanoTime();
long end = System.currentTimeMillis();
//long end = System.nanoTime();
System.out.println("time diff = " + (end - start) + " ms");
您可以使用nanoTime()
而不是currentTimeMillis()
来提高准确性,更多关于此问题的讨论here
答案 3 :(得分:0)
long start, end, total;
start = System.currentTimeMillis();
// do stuff
end = System.currentTimeMillis();
total = end - start;
total将包含以毫秒为单位运行代码主要部分的时间。
答案 4 :(得分:0)
这应该有效:
System.currentTimeMillis();
答案 5 :(得分:0)
我不是Java专家,但我认为没有这样的功能。你能做的是检查你要测试的代码之前和之后的系统时间。& This is one useful implementation.
答案 6 :(得分:0)
您可以使用System.currentTimeMillis()
获取系统时间的当前快照。
如果您希望生成更复杂的性能统计信息,而不仅仅计算单个代码块的时间,我会查看perf4j library。它提供了用于记录性能统计数据和生成聚合统计数据(如平均值,最小值和最大值)的工具。