Stopwatch类的使用

Stopwatch类提供了一种方便的机制来测量运行时间。Stopwatch使用了操作系统和硬件提供的最高分辨率机制,通常少于1毫秒(相比之下DateTime.Now和Environment.TickCount的分辨率在15毫秒左右)。
要使用Stopwatch,可以调用StartNew方法。这将会实例化一个Stopwatch对象并开始计时(此外,也可以先实例化,再手动调用Start方法)。Elapsed属性将以TimeSpan的形式返回消耗的时间间隔:

using System;
using System.Diagnostics;

namespace StopwatchDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            Stopwatch s = Stopwatch.StartNew();
            //Stopwatch sw = new Stopwatch();
            //sw.Start();
            for (int i = 0; i < 10000; i++)
            {
                Console.Write("-");
            }
            Console.WriteLine("\n");
            Console.WriteLine($"耗时:{s.Elapsed.TotalMilliseconds}毫秒"); // 代码运行所消耗的毫秒数
            Console.WriteLine($"耗时:{s.ElapsedTicks}个滴答数"); // 获取当前实例测量的总经过时间,以计时器为单位。一个只读的长整数,表示当前实例测量的计时器滴答总数。
            s.Stop(); // 运行Stopwatch并不会引起任何的后台活动,因此调用Stop方法是可选的。
        }
    }
}

Stopwatch还公开了ElapsedTicks属性。该属性将以long的形式返回消耗的计数值数目。若要将计数值转换为秒,则需要将其除以Stopwatch.Frequency属性的值。除此之外,Stopwatch还有ElapsedMilliseconds属性,而这个属性往往是最易用的。
调用Stop方法将终止计时,Elapsed和ElapsedTicks属性值将不再改变。运行Stopwatch并不会引起任何的后台活动,因此调用Stop方法是可选的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值