Java实用小工具系列2---使用StopWatch统计多个任务耗时分布

  在Java中经常需要统计程序的使用时间,如果只是一个时间段统计比较好处理,可以直接使用System.currentTimeMillis()。但如果一个程序中包含多个步骤,需要统计每个步骤耗时,并且需要统计耗时分布,找出那个步骤耗时最多,好做一下优化时,就比较费力了。这个使用可以使用Spring的工具StopWatch,比如下面例子:

        StopWatch stopWatch = new StopWatch();
        stopWatch.start("aaa");
        TimeUnit.SECONDS.sleep(10);
        stopWatch.stop();
        stopWatch.start("bbb");
        TimeUnit.SECONDS.sleep(5);
        stopWatch.stop();
        System.out.println(stopWatch.prettyPrint());

输出结果:

StopWatch '': running time (millis) = 15003
-----------------------------------------
ms     %     Task name
-----------------------------------------
10002  067%  aaa
05001  033%  bbb

 

是不是很方便,很清晰直观。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章