AI智能
改变未来

C# Stopwatch实现精确计时

C#中的Stopwatch类位于Diagnostics空间下,其功能主要是实现对程序运行的精确计时,它的用法比较简单,精确度也很高。

比如当我们写爬虫程序时可以用来计算爬虫爬取的时间;可以用来比较一些语法的优劣,比如数据库的查询,第二次会比第一次慢很多,这是由于查询缓存的问题;或者是递归和for循环哪个快;或者锁和没锁哪个快,数据结构中查找算法、排序算法的时间比较等等。计算出程序运行的精确时间对于提高我们编程能力是很有帮助的。

Start():

开始计时。

Stop();

停止计时。

StartNew():

对新的 System.Diagnostics.Stopwatch 实例进行初始化,将运行时间属性设置为零,然后开始测量运行时间。 它的返回结果是刚刚开始测量运行时间的

Restart():

停止时间间隔测量,将运行时间重置为零,然后开始测量运行时间。

ElapsedMilliseconds { get;}:

获取当前实例测量得出的总运行时间(以毫秒为单位)。

(以上就是一些常用的计时方法和属性)

下面就简单展示一个demo

using System;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using System.Text;using System.Threading;using System.Threading.Tasks;namespace StopWatchDemo{class Program{static void Main(string[] args){int i = 6000000,m1= 0,m2=0;Stopwatch sw = new Stopwatch();sw.Start();for (int k = 0; k <= i; k++){m1++;}Console.WriteLine(sw.ElapsedMilliseconds);sw.Restart();for (int k = 0; k <= i; k+=2){m2++;}sw.Stop();Console.WriteLine(sw.ElapsedMilliseconds);Console.ReadKey();}}}


—————————————————————————————————

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » C# Stopwatch实现精确计时