简单总结一句,Spring提供的计时器StopWatch对于秒、毫秒为单位方便计时的程序,尤其是单线程、顺序执行程序的时间特性的统计输出支持比较好。也就是说假如我们手里面有几个在顺序上前后执行的几个任务,而且我们比较关心几个任务分别执行的时间占用状况,希望能够形成一个不太复杂的日志输出,StopWatch提供了这样的功能。而且Spring的StopWatch基本上也就是仅仅为了这样的功能而实现。
实际中用到的代码:
public void run() { LOGGER.info("[" + taskName + "]开始执行"); StopWatch stopWatch = new StopWatch(); stopWatch.start(taskName); try { doTask(); } catch (Exception e) { LOGGER.error("[" + taskName + "]执行失败", e); } finally { stopWatch.stop(); LOGGER.info("[" + taskName + "]执行结束,耗时:" + stopWatch.getTotalTimeMillis() + "毫秒"); } }
另外,还可以使用一些其他的方法:
import org.springframework.util.StopWatch; public class StopWatchDemo { /** * @param args * @throws InterruptedException */ public static void main(String[] args) throws InterruptedException { // TODO Auto-generated method stub StopWatch clock = new StopWatch(); clock.start("TaskOneName"); Thread.sleep(1000 * 3);// 任务一模拟休眠3秒钟 clock.stop(); clock.start("TaskTwoName"); Thread.sleep(1000 * 10);// 任务一模拟休眠10秒钟 clock.stop(); clock.start("TaskThreeName"); Thread.sleep(1000 * 10);// 任务一模拟休眠10秒钟 clock.stop(); System.out.println(clock.prettyPrint()); } }
控制台输出如下:
StopWatch '': running time (millis) = 22926
-----------------------------------------
ms % Task name
-----------------------------------------
02990 013% TaskOneName
09968 043% TaskTwoName
09968 043% TaskThreeName
http://blog.csdn.net/ioe_gaoyong/article/details/22788789
相关推荐
基于蕃茄工作法的计时器软件,工作虽然重要,但是千万不要忘记工作效率和适度的休息,用此软件来对你的工作计划、工作时间和工作效率进 管理吧!当然,如果你不知道什么是“蕃茄工作法”,请先查阅相关资料!
主要介绍了Spring计时器StopWatch使用示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
主要介绍了Spring StopWatch使用实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Visual C++源代码 26 如何使用Stopwatch实现高精度计时Visual C++源代码 26 如何使用Stopwatch实现高精度计时Visual C++源代码 26 如何使用Stopwatch实现高精度计时Visual C++源代码 26 如何使用Stopwatch实现高精度...
Stopwatch
StopWatch StopWatch StopWatch StopWatch StopWatchStopWatchStopWatchStopWatchStopWatchStopWatch
主要介绍了Java计时新姿势StopWatch,最近公司来了个大佬,从他那里学到不少东西,其中一个就是计时的新姿势「StopWatch」,需要的朋友可以参考下
matlab开发-Stopwatch。显示键盘或按钮输入的运行时间
这是我依据手机上的秒表用C#实现的秒表,主演用的C# 的定时器timer控件,实现的简单的秒表功能,界面没有花费心思。。。诸位朋友可以改改看。。。
一个用到匿名委托的几种方法及Stopwatch计算时间间隔的例子
使用Stopwatch实现高精度计时
保证好用,本人亲自写的,防展讯的Stopwatch,提供秒表的功能。
CSharp 4.0 .Net Framework V4.0 Stopwatch 类
基于Flutter构建的stopwatch app..zip,颤振中的简单秒表示例应用程序
博文《C#计时利器:Stopwatch的使用》中的源代码。
Android:StopWatchAndroid:StopWatchAndroid:StopWatchAndroid:StopWatchAndroid:StopWatchAndroid:StopWatchAndroid:StopWatchAndroid:StopWatch秒表应用
c#Stopwatch秒表 准确性远远高于Timer
如何使用Stopwatch实现高精度计时C#.net源代码编写
基于FPGA设计一个数字跑表,具有复位、暂停、秒表等功能。包含完整工程,目录下DOC文件夹内有该工程详细介绍。代码简洁,注释详尽。经测试使用,功能完好,性能优良。
General Digital Clock Clock setting with Switch – Use Key_up and Key_down key to change the number – Use Key_right and Key_left key to change the position – Use set key to start Clock ...