本文介绍: StopWatch用来计算经过的时间(精确到纳秒)。这个类比调用优势在于:性能表现形式更丰富。
简介
StopWatch
用来计算经过的时间(精确到纳秒)。
这个类比调用 System.now()
优势在于:
-
性能
-
表现形式更丰富
类方法说明
官方文档:Stopwatch (Guava: Google Core Libraries for Java 27.0.1-jre API)
方法名称 | 方法描述 |
---|---|
createStarted() |
创建启动一个新的stopwatch对象,用的是System.nanoTime()作为时间资源。 |
createStarted(Ticker ticker) |
创建启动一个新的stopwatch对象,用的是特定的时间资源。 |
createUnstarted() |
创建(但不启动)一个新的stopwatch对象,用的是System.nanoTime()作为时间资源。 |
createUnstarted(Ticker ticker) |
创建(但不启动)一个新的stopwatch对象,用的是特定的时间资源。 |
elapsed() |
返回将此秒表上显示的当前经过时间作为持续时间. |
elapsed(TimeUnit desiredUnit) |
用特定的格式返回这个stopwatch经过的时间. |
isRunning() |
如果start方法被调用。stop方法还没有调用。返回真. |
reset() |
把stopwatch经过的时间设置为零,状态设置为停止. |
start() |
启动 stopwatch. |
Stopwatch |
stop() 停止stopwatch,读取的话将会返回经历过的时间. |
toString() |
返回字符串形式的elapsed time. |
使用Demo
import com.google.common.base.Stopwatch;
import org.junit.Test;
import java.util.concurrent.TimeUnit;
/**
* Stopwatch 测试
*/
public class StopwatchTest {
@Test
public void test1() throws Exception {
Stopwatch stopwatch = Stopwatch.createStarted();
TimeUnit.SECONDS.sleep(1); // 1秒处理时间
System.out.println("耗时:"+stopwatch.stop());
}
@Test
public void test2() 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); // 1034
System.out.println(millis);
// 打印
System.out.println(stopwatch.toString()); // 1.034 s
}
}
原文地址:https://blog.csdn.net/qq_63815371/article/details/135481734
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_54466.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。