2013-10-20 61 views
-1

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

我在Eclipse中运行Java。

+3

它是如何“很大的干扰”? – Justin

+2

@Quincunx大部分时间都能正常工作,但曾经有一次它吹倒了Alderaan。 –

+0

SO共识似乎是你目前的方法(使用'nanoTime()')很好:http://stackoverflow.com/questions/180158 –

回答

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

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

JavaDoc

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()结束。