代码运行时间

时间:2013-10-20 23:52:06

标签: java eclipse runtime

一段时间以来,我一直在使用System.nanoTime()来衡量代码完成所需的时间。最近这对我来说是一个很大的干扰。有没有其他方法可以衡量它?

我在Eclipse中运行Java。

3 个答案:

答案 0 :(得分:0)

import java.lang.management.ManagementFactory;
import java.lang.management.ThreadMXBean;    

long time = ManagementFactory.getThreadMXBean().getThreadCpuTime(Thread.currentThread().getId())

JavaDoc

答案 1 :(得分:0)

您可能想尝试StatsD:

https://github.com/youdevise/java-statsd-client

自述文件中的示例:

statsd.recordExecutionTime("bag", 25);

bag是您想要记录时间的方法。

答案 2 :(得分:0)

如果你不喜欢每次都输入它,那就上课吧。

示例(静态,因为我非常懒;不想实例化对象):

public static class CodeTimer{
    static long start;
    public static void start(){
        start = System.nanoTime();
    }
    public static void end(){
        System.out.println(System.nanoTime() - end);
        //could easily change it to print out time in seconds, with some
        //String before it, to return a value, etc.
    }
}

这与System.nanoTime()方法完全相同,但现在您只需要在开头输入CodeTimer.start(),在结尾输入CodeTimer.end()