StopWatch简单了解

有时候我们需要了解某个方法或某段程序的运行时间,我们可以直接用System.currentTimeMillis(); 然后再相减就可以了。当然,我们也可以直接用StopWatch 。

package com.sohu.tv.m.servlet;

import org.springframework.util.StopWatch;

/**
 * StopWatch简单了解
 *
 * @author liweihan
 * @time 2016-12-13 11:38
 */
public class TestStopWatch {

    public static void main(String[] args) throws InterruptedException {
        System.out.println("Test StopWatch begin !");
        StopWatch watch = new StopWatch();

        watch.start("获取数据!");
        Thread.sleep(100);
        watch.stop();
        /**
         * StopWatch该类在统计时间的时候,必须得前一个对象关闭才能创建新的StopWatch。
         * 所以,此处必须有watch.stop;
         */

        watch.start("数据逻辑处理!");
        Thread.sleep(1000);
        watch.stop();

        watch.start("传输数据!");
        Thread.sleep(10);
        watch.stop();

        System.out.println(watch.prettyPrint());

    }
}
时间: 2024-10-12 12:55:00

StopWatch简单了解的相关文章

Spring中StopWatch的使用

StopWatch简单的秒表,允许多个任务的计时,暴露每个命名任务的总运行时间和运行时间.隐藏使用System.currentTimeMillis(),提高应用程序代码的可读性并减少计算错误的可能性. 以下演示使用StopWatch记录请求摘要日志信息: @Slf4j public class PerformanceInteceptor implements HandlerInterceptor { private ThreadLocal<StopWatch> stopWatchThreadL

简单测试linq to sql性能

前些日子,做了一个物业收费系统,cs模式,用到了linq to sql 技术,这是我第一次使用这个东东写程序存取数据库,迷迷糊糊搞得一塌糊涂,当时有个同学他们找好的分页组件,然后写好了调用方法,由于时间比较急,而且第一次用,所以没有怎么研究就直接按照注释使用他们写好的分页方法,然而开发过程中一直都对他们写的方法有怀疑,会不会是一种投机取巧,胡编乱造的?后来我也做过一些简单分析,我发现程序在业务逻辑层中每次都从数据库中将数据全部读取出来,然后循环将数据转成特定的List,也就是遍历整个数据集合,然

C# L该系统的应用istView简单的图像浏览器

最近有同学问我怎么用ListView加载图像列表,在...前面"C#系统中的应用"于TreeView+ListView+ContextMenuStrip控件实现树状图显示磁盘文件夹,并在ListView中显示文件的具体信息.这里准备简介下给同学讲述的怎样使用ListView+ImageList控件实现简单的图片浏览器知识.        第一步 设计界面框架例如以下图所看到的,同一时候加入ImageList控件(不可见) 注意:设置ListView控件的Anchor属性为Top,Bot

C#中各种计时器 Stopwatch、TimeSpan

1.使用 Stopwatch 类 (System.Diagnostics.Stopwatch) Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间.在典型的 Stopwatch 方案中,先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性检查运行时间. Stopwatch 实例或者在运行,或者已停止:使用 IsRunning 可以确定 Stopwatch 的当前状态.使用 Start 可以开始测量运行时间:使用 Stop 可以

监控代码运行时长 -- StopWatch用法例程

在.net环境下,精确的测量出某段代码运行的时长,在网络通信.串口通信以及异步操作中很有意义.现在做了简单的总结.具体代码如下: (1).首先 using System.Diagnostics; (2).主要代码 Stopwatch sw = new Stopwatch(); //监听循环10000次需要的时长 // 计时开始 sw.Start(); for (int i = 0; i < 10000;i++ ) { // to do } // 计时结束 sw.Stop(); Console.W

微型orm框架--dapper的简单使用

1.安装 首先使用nuget安装dapper,因为这里的示例是使用mysql,所以还要安装mysql的驱动.如下图: 2 数据库表 脚本 SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for class -- ---------------------------- DROP TABLE IF EXISTS `class`; CREATE TABLE `class` ( `id` int(

POJ 2017 Speed Limit (直叙式的简单模拟 编程题目 动态属性很少,难度小)

Speed Limit Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 17578   Accepted: 12361 Description Bill and Ted are taking a road trip. But the odometer in their car is broken, so they don't know how many miles they have driven. Fortunately

看似简单!解读C#程序员最易犯的7大错误

编程时犯错是必然的,即使是一个很小的错误也可能会导致昂贵的代价,聪明的人善于从错误中汲取教训,尽量不再重复犯错,在这篇文章中,我将重点介绍C#开发人员最容易犯的7个错误. 格式化字符串 在C#编程中,字符串类型是最容易处理出错的地方,其代价往往也很昂贵,在.NET Framework中,字符串是一个不可变的类型,当一个字符串被修改后,总是创建一个新的副本,不会改变源字符串,大多数开发人员总是喜欢使用下面这样的方法格式化字符串: string updateQueryText = "UPDATE E

Mini projects ---- Stopwatch: The Game

课程全名:An Introduction to Interactive Programming in Python,来自 Rice University 授课教授:Joe Warren, Scott Rixner, John Greiner, Stephen Wong 工具:http://www.codeskulptor.org/, simplegui 模块 这是第三次作业,前面两次主要是熟悉Python动手做起来都很简单,就不记录了. 作业需要完成一个关于手表的游戏,估计很多人也都玩过.初中和