前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Guava-1.21 类StopWatch

Guava-1.21 类StopWatch

作者头像
悠扬前奏
发布2019-05-30 20:21:45
发布2019-05-30 20:21:45
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

全路径名:

com.google.common.base ** Stopwatch**

简介

用来计算经过的时间(精确到纳秒)。 这个类比调用System.nanoTime()优势在于:

  • 性能
  • 表现形式更丰富

构造器

  • Stopwatch() 创建(但不启动)一个新的stopwatch对象,用的是System.nanoTime()作为时间资源。
  • Stopwatch(Tick tick) 创建(但不启动)一个新的stopwatch对象,用的是特定的时间资源。

方法

isRunning
代码语言:javascript
代码运行次数:0
复制
public boolean isRunning()

如果start方法被调用。stop方法还没有调用。返回真。

start
代码语言:javascript
代码运行次数:0
复制
@CanIgnoreReturnValue
  public Stopwatch start()

启动stopwatch。

stop
代码语言:javascript
代码运行次数:0
复制
@CanIgnoreReturnValue
public Stopwatch stop()

停止stopwatch,读取的话将会返回经历过的时间。

reset
代码语言:javascript
代码运行次数:0
复制
@CanIgnoreReturnValue
public Stopwatch reset() 

把stopwatch经过的时间设置为零,状态设置为停止。

elapsed
代码语言:javascript
代码运行次数:0
复制
public long elapsed(TimeUnit desiredUnit)

用特定的格式返回这个stopwatch经过的时间。

toString
代码语言:javascript
代码运行次数:0
复制
@Override
public String toString()

返回字符串形式的elapsed time。

例子

代码语言:javascript
代码运行次数:0
复制
public class StopWatchTest {

    public static void main(String[] args) throws Exception{
        // 创建stopwatch并开始计时
        Stopwatch stopwatch = Stopwatch.createStarted();
        Thread.sleep(1980);
        // 以秒打印从计时开始至现在的所用时间,向下取整
        System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 1
        // 停止计时
        stopwatch.stop();
        System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 1
        // 再次计时
        stopwatch.start();
        Thread.sleep(100);
        System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 2
        // 重置并开始
        stopwatch.reset().start();
        Thread.sleep(1030);
        // 检查是否运行
        System.out.println(stopwatch.isRunning()); // true
        long millis = stopwatch.elapsed(TimeUnit.MILLISECONDS); // 1031
        System.out.println(millis);
        // 打印
        System.out.println(stopwatch.toString()); // 1.03 s
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.05.02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 全路径名:
  • 简介
  • 构造器
  • 方法
    • isRunning
    • start
    • stop
    • reset
    • elapsed
    • toString
  • 例子
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档