如何使用StopWatch优雅替代currentTimeMillis计算程序执行耗时
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关如何使用StopWatch优雅替代currentTimeMillis计算程序执行耗时,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。需求有
千家信息网最后更新 2026年11月02日如何使用StopWatch优雅替代currentTimeMillis计算程序执行耗时
这篇文章将为大家详细讲解有关如何使用StopWatch优雅替代currentTimeMillis计算程序执行耗时,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
需求
有时需要记录程序执行时间,最简单就是打印当前时间与执行完时间的差值,缺点是:
执行大量测试的话就很麻烦
不直观
如果想对执行的时间做进一步控制,则需要在程序中很多地方修改
于是 Spring提供了一个StopWatch类可以做类似任务执行时间控制,即封装了一个对开始时间,结束时间记录工具
案例
统计输出总耗时
import org.springframework.util.StopWatch; public class SpringStopWatchExample { public static void main (String[] args) throws InterruptedException { StopWatch sw = new StopWatch(); sw.start(); //long task simulation Thread.sleep(1000); sw.stop(); System.out.println(sw.getTotalTimeMillis()); }}输出最后一个任务的耗时
public class SpringStopWatchExample2 { public static void main (String[] args) throws InterruptedException { StopWatch sw = new StopWatch(); sw.start("A");//setting a task name //long task simulation Thread.sleep(1000); sw.stop(); System.out.println(sw.getLastTaskTimeMillis()); }}以优雅的格式打出所有任务的耗时以及占比
import org.springframework.util.StopWatch; public class SpringStopWatchExample3 { public static void main (String[] args) throws InterruptedException { StopWatch sw = new StopWatch(); sw.start("A"); Thread.sleep(500); sw.stop(); sw.start("B"); Thread.sleep(300); sw.stop(); sw.start("C"); Thread.sleep(200); sw.stop(); System.out.println(sw.prettyPrint()); }}序列服务输出耗时信息
@Overridepublic long nextSeq(String name) { StopWatch watch = new StopWatch(); watch.start("单序列获取总消耗"); long sequence = generator.generateId(name); watch.stop(); logger.info(watch.prettyPrint()); return sequence;}getTotalTimeSeconds() 获取总耗时秒,同时也有获取毫秒的方法
prettyPrint() 优雅的格式打印结果,表格形式
shortSummary() 返回简短的总耗时描述
getTaskCount() 返回统计时间任务的数量
getLastTaskInfo().getTaskName() 返回最后一个任务TaskInfo对象的名称
关于"如何使用StopWatch优雅替代currentTimeMillis计算程序执行耗时"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
时间
任务
优雅
程序
篇文章
输出
序列
更多
格式
控制
统计
不错
实用
简短
直观
信息
内容
同时
名称
地方
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技名片
互联网金融监管科技数据
互联网科技深圳
互联网是不是新科技
互联网科技会
北京互联网科技有限公司
善班互联网科技
狮子座互联网科技有限公司
智慧科技互联网
成都仁贤领冠互联网科技有限公司
电子科技大学互联网创业大赛
乌苏新华互联网科技做什么的
中国科技创新与世界互联网大会
允成互联网科技有限公司融资
洛阳共同富裕互联网科技有限公司
烟台灵鸽互联网科技有限公司
卡尔迅互联网科技有限公司
互联网硬科技公司
全球科技与互联网公司市值变化
山东蛋芒互联网科技有限公司
深圳科技互联网
苏州大垚互联网科技
互联网科技咨询
互联网 科技馆
济南和联互联网科技有限公司
岳阳华臻互联网科技有限公司
米聚互联网科技南京有限公司排面
深圳市罗太互联网科技有限公司
互联网科技股为什么大涨
中国新注册互联网科技