当前位置:首页 > C#学习

C# Stopwatch 类

小道7年前 (2018-11-30)C#学习6053

Stopwatch 可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。一般用来测量代码执行所用的时间或者计算性能数据,在优化代码性能上可以使用Stopwatch来测量时间。

使用的时候需要引用 System.Diagnostics 命名空间。先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性或者使用 ElapsedMilliseconds 属性得到运行时间(这两个属性的区别是前者得到的是TimeSpan实例,后者得到的是毫秒)。使用 IsRunning 可以确定 Stopwatch 的当前状态是正在运行还是已经停止。每次调用 Start 时开始累计运行时间计数;每次调用 Stop 时结束当前时间间隔测量,并冻结累计运行时间值。 使用 Reset 方法可以清除现有 Stopwatch 实例中的累计运行时间。

常用属性:

Stopwatch.Elapsed    获取当前实例测量得出的总运行时间。

Stopwatch.ElapsedMilliseconds  获取当前实例测量得出的总运行时间(以毫秒计时)。

Stopwatch.ElapsedTicks  获取当前实例测量得出的总运行时间(用计时器计时周期表示)。

Stopwatch.IsRunning  获取一个指示Stopwatch计时器是否在运行的值。

using System;
using System.Diagnostics;

namespace Stopwatch类
{
    class Program
    {
        static void Main(string[] args)
        {
            Stopwatch sw = new Stopwatch();//实例化
            sw.Start();//开始或继续测量某个时间间隔的运行时间。
            Sum();//调用静态方法
            sw.Stop();//停止测量某个时间间隔的运行时间。
            Console.WriteLine("一共用时 {0} .约用时 {1} 秒.", sw.Elapsed, (sw.ElapsedMilliseconds / 1000));//Elapsed 获取当前实例测量得出的总运行时间。 ElapsedMilliseconds 获取当前实例测量得出的总运行时间(以毫秒为单位)。
            Console.ReadKey();//按任意键
        }
        static void Sum()//静态方法
        {
            long sum = 0;
            for (int i = 0; i < 1000000000; i++)//循环
            {
                sum += i;//相加 sum = sum + i;
            }
            Console.WriteLine("相加结果:" + sum);//输出
        }
    }
}

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/128.html

分享给朋友:

“C# Stopwatch 类” 的相关文章

.NET C#第一个控制台应用程序 Hello, World!(你懂得)。

.NET C#第一个控制台应用程序 Hello, World!(你懂得)。

“Hello, World”程序指的是只在计算机屏幕上输出“Hello, World!”(意为“世界,你好!”)这行字符串的计算机程序。一般来说,这是每一种计算机编程语言中最基本、最简单的程序,亦通常是初学者所编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境,以及运行环境是否已经安装妥…

类型转换Cast和Convert

类型转换Cast和Convert

把源类型赋值给目标类型,两个类型不一致的时候会发生类型转换。a=b,b是源,a是目标。隐式转换、显式转换。当目标类型一定能满足源类型转换过去后的要求的话就是隐式转换;如果当目标类型不一定能满足源类型转换过去后的要求的话就需要显式转换(程序员自己负责)。比如:把中国人转换为人是隐式转换,把人转换为中国…

函数的ref、out参数

函数的ref、out参数

函数参数默认是值传递的,也就是“复制一份”ref必须先初始化,因为是引用,所以必须先“有”,才能引用,而out则是内部为外部赋值,所以不需要初始化,而且外部初始化也没用。ref应用场景内部对外部的值进行改变,out则是内部为外部变量赋值,out一般用在函数有多个返回值的场所。  …

面向对象版聊天机器人

面向对象版聊天机器人

机器人有不同的名字、维护自己的FullLevel,可以SayHello(我叫***),可以喂食(Eat(int foodCount)),可以对它说话(Speak),对异常情况(错误的喂饭数字,喂的太多撑死了)进行处理,有两个机器人供选择,一开始通过1、2数字选择聊天机器人。  &…