一个可供选择的资源是时间片段可以被替换,例如为了测试或性能原因,不影响你的大部分代码 * * * Basic usage: * * {@code * Stopwatch stopwatch = Stopwatch.createStarted...(); * doSomething(); * stopwatch.stop(); // optional * * Duration duration = stopwatch.elapsed(); * *...*这个状态更改的方法不是幂等的,开始或停止一个已经处于期望状态的stopwatch对象是一个错误。...This allows you to simulate any valid * behavior of the stopwatch....Instead, create one like this: *安卓用户的警告:设备休眠的时候stopwatch默认可能不会继续计算。
stopwatch = new Stopwatch()....{@link#start start}();50 * doSomething();51 * stopwatch....("that took: " + stopwatch); // formatted string like "12.3 ms"56 * 57 *58 * Stopwatch methods are...*61 * When testing code that uses this class, use the {@linkplain 62 * #Stopwatch(Ticker) alternate...= true;114 startTick =ticker.read();115 return this;116 }117 118 /** 119 * Stops the stopwatch.
最简单的方法就是打印当前时间与执行完时间的差值,然后这样如果执行大量测试的话就很麻烦,并且不直观,如果想对执行的时间做进一步控制,则需要在程序中很多地方修改,目前spring-framework提供了一个StopWatch...类可以做类似任务执行时间控制,也就是封装了一个对开始时间,结束时间记录操作的Java类,小例一则如下 实例 package com.example.stopwatch; import org.springframework.util.StopWatch...; public class TestStopWatch { private void test() throws InterruptedException { StopWatch...sw = new StopWatch(); sw.start("起床"); Thread.sleep(1000); sw.stop();...TestStopWatch testStopWatch = new TestStopWatch(); testStopWatch.test(); } } 结果 StopWatch
命名空间:System.Diagnostics.Stopwatch 实例化:Stopwatch getTime=new Stopwatch(); 开始计时:getTime.Start();...getTime.Stop(); Console.WriteLine(“getTime:”+totleTime .ElapsedMilliseconds.ToString ()); 常用属性:Stopwatch.Elapsed...Stopwatch.ElapsedMilliseconds 获取当前实例测量得出的总运行时间(以毫秒计时)。...Stopwatch.ElapsedTicks 获取当前实例测量得出的总运行时间(用计时器计时周期表示)。 ...Stopwatch.IsRunning 获取一个指示Stopwatch计时器是否在运行的值。
处理过程(学习stopwatch) 虽然debug可以查看到每一步代码执行时发生的变化,但是不能清楚的看到每一步执行的时间,这个时候Stopwatch就派上用场了。 什么是stopwatch?...Stopwatch是Guava(Google开源java库)中推出的计时器类,可以用于方便的检测两个代码直接执行的速度 Stopwatch简单用法 //引入Guava包guava-19.0.jar...import com.google.common.base.Stopwatch; //创建一个自启动的计时器 Stopwatch stopwatch = Stopwatch.createStarted...(); //获取计时器当前时间,单位:ms stopwatch.elapsed(TimeUnit.MILLISECONDS) //关闭计时器 stopwatch.stop(); 使用Logger...stopwatch = Stopwatch.createStarted(); rateGroupsDs.refresh(); log.debug(String.format(“rateGroupsDs
获取系统时间计算 System.currentTimeMillis() Stopwatch 对程序部分代码进行计时(ms级别),适用于同步单线程代码块。...StopWatch实例一次只能开启一个task,不能同时start多个task,并且在该task未stop之前不能start一个新的task,必须在该task stop之后才能开启新的task,若要一次开启多个...,需要new不同的StopWatch实例 // 只输出运行多少秒 Stopwatch stopwatch = Stopwatch.createStarted(); stopwatch.stop(); System.out.println...(stopwatch.elapsed(TimeUnit.SECONDS) + "s"); // StopWatch sw = new StopWatch("test"); sw.start...do something Thread.sleep(200); sw.stop(); System.out.println(sw.prettyPrint()); 运行结果: 2s StopWatch
public StopWatch(java.lang.String id) //返回此秒表的ID。...stopWatch = new StopWatch(“测试秒表”); stopWatch.start(“暂停100毫秒”); Thread.sleep(100 * 1); stopWatch.stop...(); stopWatch.start(“暂停200毫秒”); Thread.sleep(100 * 2); stopWatch.stop(); stopWatch.start(“暂停300毫秒”);...Thread.sleep(100 * 3); stopWatch.stop(); stopWatch.setKeepTaskList(true); //是否构建TaskInfo信息 Arrays.stream...()); System.out.println(stopWatch.prettyPrint());//打印详细信息 System.out.println(stopWatch.shortSummary()
1、概述:给一条大MSDN的链接关于Stopwatch类最详细的教程 ,然后看着教程自己手动敲一边,加深映象,好记性不如烂键盘,哈哈,开个玩笑!...通过一段代码来说明: using System; namespace System.Diagnostics{ public class Stopwatch:System.Object {...3、类属性介绍 下面是Stopwatch类的所有的属性以及属性的用法以及每个属性会配上一段代码实例来阐述这个属性到底是怎么用的: Elapsed 表示当前实例(线程)测量出的总运行时间 public...sw=new Stopwatch(); sw.Start();//开始计时 Thread.Sleep(3000); sw.Stop()...sw = new Stopwatch(); sw.Start();//开始计时 Thread.Sleep(3000); sw.Stop
resume(); //恢复计时 stop(); //停止计时 getTime(); //统计从start到现在的计时 import org.apache.commons.lang3.time.StopWatch...public class StopWatchTest { public static void main(String[] args) throws InterruptedException { StopWatch...watch = new StopWatch(); watch.start(); // 统计从start开始经历的时间 Thread.sleep(1000); System.out.println
Stopwatch类提供了一种方便的机制来测量运行时间。...要使用Stopwatch,可以调用StartNew方法。这将会实例化一个Stopwatch对象并开始计时(此外,也可以先实例化,再手动调用Start方法)。...s = Stopwatch.StartNew(); //Stopwatch sw = new Stopwatch(); //sw.Start();...s.Stop(); // 运行Stopwatch并不会引起任何的后台活动,因此调用Stop方法是可选的。 } } } Stopwatch还公开了ElapsedTicks属性。...若要将计数值转换为秒,则需要将其除以Stopwatch.Frequency属性的值。除此之外,Stopwatch还有ElapsedMilliseconds属性,而这个属性往往是最易用的。
StopWatch是位于 org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ns级别),可以很方便的计算出任务的耗时....commons工具包下也有的实现可以直接使用 (org.apache.commons.lang3.time.StopWatch) ,功能差不多。...1、StopWatch使用 通过创建 StopWatch对象,然后调用它的start、stop方法来区分执行任务区间,基于 System.nanoTime()获得时间。...若要一次开启多个 task,需要new不同的StopWatch实例 代码侵入式使用,需要改动多处代码 2、Spring中StopWatch源码 该工具类中源码实现也极其简单,通过 start与stop...; } else { return (StopWatch.TaskInfo[])this.taskList.toArray(new StopWatch.TaskInfo
统计输出总耗时 StopWatch sw = new StopWatch(); sw.start(); // long task simulation try {...); } sw.stop(); System.out.println(sw.getTotalTimeMillis()); 以优雅的格式打出所有任务的耗时以及占比 StopWatch...sw = new StopWatch(); sw.start("A"); Thread.sleep(500); sw.stop(); sw.start(
public static void main(String[] args) { StopWatch stopWatch = new StopWatch(); stopWatch.start...(); //下面我们使用stopWatch提供的方法进行信息的输出 System.out.println(stopWatch.prettyPrint()); }...StopWatch的使用,先手动new一个对象,通过这个对象我们可以调用里面的实例方法了。...下面我们继续看下StopWatch工具类提供的常用方法吧 我们看下stopWatch方法做了什么,和原来的有什么不一样的,除了多了给当前的执行 任务起了一个有明确含义的任务名,在计算时间时任然时调用的是...= null) { throw new IllegalStateException("Can't start StopWatch: it's already running");
Stopwatch(Tick tick) 创建(但不启动)一个新的stopwatch对象,用的是特定的时间资源。...start @CanIgnoreReturnValue public Stopwatch start() 启动stopwatch。...stop @CanIgnoreReturnValue public Stopwatch stop() 停止stopwatch,读取的话将会返回经历过的时间。...reset @CanIgnoreReturnValue public Stopwatch reset() 把stopwatch经过的时间设置为零,状态设置为停止。...并开始计时 Stopwatch stopwatch = Stopwatch.createStarted(); Thread.sleep(1980); //
Guava之Stopwatch 计时器 Stopwatch用来计算经过的时间(精确到纳秒)。...class Stopwatch extends Object 二、类方法 方法类型 方法描述 static Stopwatch createStarted() 创建启动一个新的stopwatch对象,...static Stopwatch createStarted(Ticker ticker) 创建启动一个新的stopwatch对象,用的是特定的时间资源。...Stopwatch reset() 把stopwatch经过的时间设置为零,状态设置为停止. Stopwatch start() 启动 stopwatch....() throws Exception { // 创建stopwatch并开始计时 Stopwatch stopwatch = Stopwatch.createStarted
最简单的方法就是打印当前时间与执行完时间的差值,然后这样如果执行大量测试的话就很麻烦,并且不直观,如果想对执行的时间做进一步控制,则需要在程序中很多地方修改,目前spring-framework提供了一个StopWatch...类可以做类似任务执行时间控制,也就是封装了一个对开始时间,结束时间记录工具 示例 先来看几个示例 统计输出总耗时 import org.springframework.util.StopWatch;...sw = new StopWatch(); sw.start(); //long task simulation Thread.sleep(1000);...sw = new StopWatch(); sw.start("A");//setting a task name //long task simulation...watch = new StopWatch(); watch.start("单序列获取总消耗"); long sequence = generator.generateId(name)
目录 1 使用 1 使用 StopWatch是Spring核心包中的一个工具类,它是一个简单的秒表工具,可以计时指定代码段的运行时间以及汇总这个运行时间,使用它可以隐藏使用 public static...void main(String[] args) { org.apache.commons.lang3.time.StopWatch stopWatch = new org.apache.commons.lang3....time.StopWatch(); stopWatch.start(); try { sleep(100); } catch (...InterruptedException e) { e.printStackTrace(); } stopWatch.stop();...System.out.println("执行时长:" + stopWatch.getTime(TimeUnit.SECONDS) + " 秒."); }
StopWatch是位于org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ms级别),适用于同步单线程代码块。 ...sw = new StopWatch("test"); sw.start("task1"); // do something Thread.sleep(100);...StopWatch优缺点: 优点: spring自带工具类,可直接使用 代码实现简单,使用更简单 统一归纳,展示每项任务耗时与占用总时间的百分比,展示结果直观 性能消耗相对较小,并且最大程度的保证了...中StopWatch源码实现如下: import java.text.NumberFormat; import java.util.LinkedList; import java.util.List;...; } else { return (StopWatch.TaskInfo[]) this.taskList.toArray(new StopWatch.TaskInfo
System.currentTimeMillis(); //获取结束时间 System.out.println("程序运行时间: "+(endTime-startTime)+"ms"); } 2、使用StopWatch...version>3.6 2.2、上代码: public static void main(String[] args) { //创建并启动StopWatch...StopWatch stopwatch = StopWatch.createStarted(); //业务逻辑.........stopwatch.stop(); System.out.println(stopwatch.getTime(TimeUnit.MINUTES)); } 发布者:全栈程序员栈长,转载请注明出处:
领取专属 10元无门槛券
手把手带您无忧上云