使用spring的计时器StopWatch,更简洁方便(附源码)

使用spring的计时器StopWatch,更简洁方便(附源码)

问题背景

平常项目中经常会用到计时器,这里介绍stopwatch的使用
注意事项:

StopWatch的使用

1 直接导入StopWatch的类

import org.springframework.util.StopWatch;

2 测试代码

package com.lanran.stopwatch.service;

import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.springframework.util.StopWatch;

import java.util.concurrent.TimeUnit;

/**
 * @Author suolong
 * @Date 2022/7/20 16:56
 * @Version 2.0
 */
@Slf4j
public class StopWatchService {
    
    

    @Test
    public void stopwatchTest() throws InterruptedException {
    
    
        StopWatch stopWatch = new StopWatch();

        stopWatch.start("任务一");
        task1();
        stopWatch.stop();
        log.info("任务1: {}", stopWatch.getLastTaskTimeMillis());

        stopWatch.start("任务二");
        task2();
        stopWatch.stop();
        //格式化输出
        log.info(stopWatch.prettyPrint());
    }

    public void task1() throws InterruptedException {
    
    
        TimeUnit.MILLISECONDS.sleep(100);
    }

    public void task2() throws InterruptedException {
    
    
        TimeUnit.MILLISECONDS.sleep(300);
    }

}

3 测试结果,可以看出结果有一点偏差,这是因为本身语句的执行也需要时间,和电脑频率也息息相关

总结

也可以使用原本的System.currentTimeMillis()进行时间计算,根据自己的喜好




作为程序员第 207 篇文章,每次写一句歌词记录一下,看看人生有几首歌的时间,wahahaha …

Lyric: 但清晰却还是一样清晰

猜你喜欢

转载自blog.csdn.net/cucgyfjklx/article/details/125910264