大家好,又见面了,我是你们的朋友全栈君。
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方法是可选的。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152445.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...