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");
}
相关推荐
黑猫酋长8 小时前
Apache Zeppelin:一款强大的数据分析和可视化工具
数据挖掘·数据分析·apache
belldeep9 小时前
网络安全:Apache Druid 安全漏洞
网络安全·apache·druid
SelectDB12 小时前
Apache Doris 4.0 版本正式发布:全面升级 AI 与搜索能力,强化离线计算
数据库·数据分析·apache
SelectDB12 小时前
从 Snowflake 到 Apache Doris:Planet 实时分析成本直降 80%、查询加速 90 倍
数据库·数据分析·apache
一路向北⁢1 天前
基于 Apache POI 5.2.5 构建高效 Excel 工具类:从零到生产级实践
java·apache·excel·apache poi·easy-excel·fast-excel
Lion Long2 天前
PB级数据洪流下的抉择:从大数据架构师视角,深度解析时序数据库选型与性能优化(聚焦Apache IoTDB)
大数据·性能优化·apache·时序数据库·iotdb
ybb_ymm3 天前
从需求开始至架构设计的适用于商家及小吃摊的点餐小程序
小程序·apache
ZHOU_WUYI4 天前
Apache Spark 集群部署与使用指南
大数据·spark·apache
有一个好名字4 天前
万字 Apache ShardingSphere 完全指南:从分库分表到分布式数据库生态
数据库·分布式·apache
羑悻的小杀马特4 天前
下一代时序数据库标杆:Apache IoTDB架构演进与AIoT时代的数据战略
apache·时序数据库·iotdb