StopWath,apache commons lang3 包下的一个任务执行时间监视器的使用

StopWath是 apache commons lang3 包下的一个任务执行时间监视器,与我们平时常用的秒表的行为比较类似,我们先看一下其中的一些重要方法:

java 复制代码
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>    
    <groupId>org.apache.commons</groupId>    
    <artifactId>commons-lang3</artifactId>    
    <version>3.6</version>
</dependency>

Apache提供的这个任务执行监视器功能丰富强大,灵活性强,如下经典实用案例:

java 复制代码
public static void main(String[] args) throws InterruptedException {    
    //创建后立即start,常用    
    StopWatch watch = StopWatch.createStarted();
    // StopWatch watch = new StopWatch();    
    // watch.start();    Thread.sleep(1000);    
    System.out.println(watch.getTime());    
    System.out.println("统计从开始到现在运行时间:" + watch.getTime() + "ms");
    Thread.sleep(1000);    
    watch.split();    
    System.out.println("从start到此刻为止的时间:" + watch.getTime());   
     System.out.println("从开始到第一个切入点运行时间:" + watch.getSplitTime());

    Thread.sleep(1000);    
    watch.split();    
    System.out.println("从开始到第二个切入点运行时间:" + watch.getSplitTime());    
    // 复位后, 重新计时    
    watch.reset();    
    watch.start();    
    Thread.sleep(1000);    
    System.out.println("重新开始后到当前运行时间是:" + watch.getTime());    
    // 暂停 与 恢复    
    watch.suspend();    
    System.out.println("暂停2秒钟");    
    Thread.sleep(2000);    
    // 上面suspend,这里要想重新统计,需要恢复一下   
     watch.resume();    
    System.out.println("恢复后执行的时间是:" + watch.getTime());
    Thread.sleep(1000);    
    watch.stop();
    System.out.println("花费的时间》》" + watch.getTime() + "ms");    
    // 直接转成s    
    System.out.println("花费的时间》》" + watch.getTime(TimeUnit.SECONDS) + "s");
}
相关推荐
众链网络12 小时前
景区票务系统选型的技术尽调清单:从并发、数据到二次开发的 12 个必查项
apache·景区票务系统
AllData公司负责人2 天前
AllData数据中台物联网实时平台|集成 Apache StreamPipes,MQTT工业物联网数据实时预警实践案例
大数据·数据库·人工智能·物联网·apache·工业物联网·streampipes
白帽攻防录3 天前
SRC 挖洞:Apache Tomcat 加密拦截器绕过深度复盘,CVE-2026-34486 fail-open 一行代码怎么打穿集群通信
java·网络安全·tomcat·apache
筑梦之路3 天前
Kafka KRaft 模式 Kubernetes 部署手册(StatefulSet + apache/kafka 官方镜像)——筑梦之路
kafka·kubernetes·apache
网络豆19 天前
Apache Maven 鸿蒙 PC 适配全记录:把 JVM 构建工具交付到 HiShell
maven·apache·harmonyos
网络豆19 天前
Apache Hive 鸿蒙 PC 适配全记录:以 Qt 客户端打通 HiveQL、监控与元数据访问
hive·apache·harmonyos
网络豆19 天前
Apache HBase 鸿蒙 PC 适配全记录:用 Qt 原生客户端打通 REST 管理与数据读写
apache·hbase·harmonyos
无巧不成书021820 天前
Apache Tomcat 9 下载全指南(Windows,Linux,macOS):版本选型、国内镜像、SHA-512 与 PGP 完整性校验
windows·tomcat·apache
Dream-Y.ocean20 天前
鸿蒙平台 Apache Tomcat 管理控制台适配实战:基于 Electron 壳方案的真实 HTTP 服务器实现
tomcat·apache·harmonyos
betazhou20 天前
Apache seatunel常用配置参数解析说明
apache·seatunnel