Stopwatch类的使用

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

大家好,又见面了,我是你们的朋友全栈君。

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方法是可选的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152445.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • goland2022.01激活【最新永久激活】

    (goland2022.01激活)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~G…

    2022年3月31日
    1.0K
  • xcode armv7 armv7s arm64

    armv6armv7armv7sarm64引起编译包翻倍增大的问题,下边来说一下关于ios这个指令集目前ios的指令集有以下几种:armv6iPhoneiPhone2iPhone3G第一代和第二代iPodToucharmv7iPhone4iPhone4Sarmv7siPhone5iPho

    2022年4月9日
    223
  • 中国移动DNS大全「建议收藏」

    中国移动DNSIP地址,包括广东移动DNS,上海移动DNS,北京移动DNS,陕西移动DNS,江苏移动,山东移动DNS等共全国32个移动省份的DNSIP地址。DNS用户数国家省份地区运营商用户数排名(省份)用户数比例(省份)112.4.0.551111900中国陕西西安移动59.84%221.131.143.691022100中国…

    2022年4月15日
    939
  • 【云原生】第十二篇–docker容器镜像仓库Harbor部署[通俗易懂]

    【云原生】第十二篇–docker容器镜像仓库Harbor部署[通俗易懂]由于国内访问国外的容器镜像仓库速度比较慢,因此国内企业创建了容器镜像加速器,以方便国内用户使用容器镜像。Harbor是VMware公司开源的企业级DockerRegistry项目,其目标是帮助用户迅速搭建一个企业级的Dockerregistry服务。它以Docker公司开源的registry为基础,提供了管理UI,基于角色的访问控制(RoleBasedAccessControl),AD/LDAP集成、以及审计日志(Auditlogging)等企业用户需求的功能,同时还原生支持中文。…

    2025年7月29日
    4
  • linux系统添加路由命令_linuxeth1添加路由

    linux系统添加路由命令_linuxeth1添加路由添加到主机的路由routeadd-host192.168.1.2deveth0:0routeadd-host10.20.30.148gw10.20.30.40添加到网络的路由routeadd-net10.20.30.40netmask255.255.255.248eth0routeadd-net10.20.30.48netmask255.255.255.248gw10.20.30.41routeadd-net192.168.1.0/24eth

    2022年10月4日
    3
  • 关于浏览器ip代理导致定位错乱问题的坑

    关于浏览器ip代理导致定位错乱问题的坑

    2021年10月23日
    72

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号