Java StopWatch 任务执行时间监视器

StopWatch 是 apache commons lang3 包下的一个任务执行时间监视器类

需求场景:记录代码执行时间,分析耗时瓶颈

 

主要方法:

    start();    //开始计时

    split();    // 设置 split 点

    getSplitTime();    // 获取从 start 到最后一次 split 的时间

    reset();    //重置计时

    suspend();    //暂停计时

    resume();    // 恢复计时

    stop();    // 停止计时

    getTime();    // 统计从 start 到现在的计时

 

代码清单:

 

/**

 * Created with IDEA

 * author:Dingsheng Huang

 * Date:2019/4/4

 * Time:下午4:32

 */

public class StopWatchDemo {

 

    public static void main (String[] args) throws InterruptedException {

        StopWatch stopWatch = new StopWatch();

 

        // 计时开始点

        stopWatch.start();

        // do something ...

        Thread.sleep(1000);

        // 断点1

        stopWatch.split();

        Thread.sleep(1000);

        System.out.println(stopWatch.getSplitTime());

        // 断点2

        stopWatch.split();

        // 暂停计时

        stopWatch.suspend();

        Thread.sleep(1000);

        System.out.println(stopWatch.getSplitTime());

        // 恢复计时

        stopWatch.resume();

        Thread.sleep(500);

        // 获取从 start 到 现在的计时

        System.out.println(stopWatch.getTime());

    }

}

执行结果:

Java StopWatch 任务执行时间监视器_第1张图片

 

 

 

更新2019.11.27 示例:

public static void main(String[] args) throws InterruptedException {
        StopWatch sw = new StopWatch();
        sw.start();
        Thread.sleep(1000L);
        System.out.println(sw.getTime());
        sw.reset();
        sw.start();
        Thread.sleep(1000L);
        System.out.println(sw.getTime());
    }

输出

Java StopWatch 任务执行时间监视器_第2张图片

你可能感兴趣的:(Java基础)