以前在進行時間耗時時我們通常的做法是先給出計算前后兩個的時間值,然后通過詳見來計算耗時時長。
eg:
long start = System.currentTimeMillis(); ......業務處理 System.out.println("耗時:" + (System.currentTimeMillis() - start) + "ms");
我們可以使用已有的工具類中的秒表來替代上述的使用方式,現有的秒表工具類有org.springframework.util.StopWatch、org.apache.commons.lang.time.StopWatch,這里以Spring的StopWatch類為例:
public static void main(String[] args) throws InterruptedException{ StopWatch stopWatch = new StopWatch("任務耗時秒表工具"); stopWatch.start("task1"); Thread.sleep(1000); stopWatch.stop(); System.out.println(stopWatch.getTotalTimeMillis()); stopWatch.start("task2"); Thread.sleep(3000); stopWatch.stop(); //所有任務耗時時間 System.out.println(stopWatch.getTotalTimeMillis()); System.out.println(stopWatch.prettyPrint()); StopWatch stopWatch2 = new StopWatch("任務耗時秒表工具2"); stopWatch2.start("task3"); Thread.sleep(3000); stopWatch2.stop(); //所有任務耗時時間 System.out.println(stopWatch2.getTotalTimeMillis()); System.out.println(stopWatch2.prettyPrint()); }