全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C#中各种计时器用法小结

本文实例总结了C#中各种计时器用法。分享给大家供大家参考,具体如下:

1、使用 Stopwatch 类 (System.Diagnostics.Stopwatch)

Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。在典型的 Stopwatch 方案中,先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性检查运行时间。

Stopwatch 实例或者在运行,或者已停止;使用 IsRunning 可以确定 Stopwatch 的当前状态。使用 Start 可以开始测量运行时间;使用 Stop 可以停止测量运行时间。通过属性 Elapsed、ElapsedMilliseconds 或 ElapsedTicks 查询运行时间值。当实例正在运行或已停止时,可以查询运行时间属性。运行时间属性在 Stopwatch 运行期间稳固递增;在该实例停止时保持不变。

默认情况 下,Stopwatch 实例的运行时间值相当于所有测量的时间间隔的总和。每次调用 Start 时开始累计运行时间计数;每次调用 Stop 时结束当前时间间隔测量,并冻结累计运行时间值。使用 Reset 方法可以清除现有 Stopwatch 实例中的累计运行时间。

Stopwatch在基础计时器机制中对计时器的刻度进行计数,从而测量运行时间。如果安装的硬件和操作系统支持高分辨率性能的计数器,则 Stopwatch 类将使用该计数器来测量运行时间;否则,Stopwatch 类将使用系统计数器来测量运行时间。使用 Frequency 和 IsHighResolution 字段可以确定实现 Stopwatch 计时的精度和分辨率。

示例

System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
//任务 1...
stopwatch.Stop();
_result.Text += "<p>任务 1 用时:" + stopwatch.ElapsedTicks + "。</p>";
stopwatch.Reset(); //若没有 Reset,则会把任务 1 的用时累计进入任务 2
stopwatch.Start();
//任务 2...
stopwatch.Stop();
_result.Text += "<p>任务 2 用时:" + stopwatch.ElapsedTicks + "。</p>";

2、基于 Windows 的标准计时器(System.Windows.Forms.Timer)

Windows 计时器是为单线程环境设计的,这个计时器是使用最简单的一种,只要把工具箱中的Timer控件拖到窗体上,然后设置一下事件和间隔时间等属性就可以了。

3、基于服务器的计时器(System.Timers.Timer)

System.Timers.Timer不依赖窗体,是从线程池唤醒线程,是传统的计时器为了在服务器环境上运行而优化后的更新版本。

4、线程计时器(System.Threading.Timer)

线程计时器也不依赖窗体,是一种简单的、轻量级计时器,它使用回调方法而不是使用事件,并由线程池线程提供支持。

5、System.Environment.TickCount

TickCount属性用来获取来自计算机的系统计时器的毫秒计数。

用法:

int startTime=System.Environment.TickCount;
//......任务......
int endTime=System.Environment.TickCount;
int runTime=endTime-startTime;//(注意单位是毫秒哦!)

6、使用TimeSpan类(System.TimeSpan)

TimeSpan 对象表示时间间隔或持续时间,按正负天数、小时数、分钟数、秒数以及秒的小数部分进行度量。用于度量持续时间的最大时间单位是天。更大的时间单位(如月和年)的天数不同,因此为保持一致性,时间间隔以天为单位来度量。

TimeSpan 对象的值是等于所表示时间间隔的刻度数。一个刻度等于 100 纳秒,TimeSpan 对象的值的范围在 MinValue 和 MaxValue 之间。

TimeSpan 值可以表示为 [-]d.hh:mm:ss.ff,其中减号是可选的,它指示负时间间隔,d 分量表示天,hh 表示小时(24 小时制),mm 表示分钟,ss 表示秒,而 ff 为秒的小数部分。即,时间间隔包括整的正负天数、天数和剩余的不足一天的时长,或者只包含不足一天的时长。例如,初始化为 1.0e+13 刻度的 TimeSpan 对象的文本表示“11.13:46:40”,即 11 天,13 小时,46 分钟和 40 秒。

用法:

System.DateTime startTime,endTime;
System.TimeSpan time;
startTime=System.DateTime.Now;
//......任务......
endTime=System.DateTime.Now;
time=endTime-startTime;
int runTime=time.Milliseconds;//(以毫秒为单位)

更多关于C#相关内容感兴趣的读者可查看本站专题:《C#日期与时间操作技巧总结》、《C#字符串操作技巧总结》、《C#数组操作技巧总结》、《C#中XML文件操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》及《C#面向对象程序设计入门教程》

希望本文所述对大家C#程序设计有所帮助。


# C#  # 计时器  # C#中的三种定时计时器Timer用法介绍  # c# 实现计时器功能  # C#计时器的三种实现方法  # C#线程倒计时器源码分享  # c# 区分几种定时器(timer)  # 详解C#中的定时器Timer类及其垃圾回收机制  # C#中timer定时器用法实例  # c#各种Timer类的区别与用法介绍  # C#四种计时器Timer的区别和用法  # 操作技巧  # 程序设计  # 时长  # 持续时间  # 也不  # 是一种  # 相关内容  # 多个  # 更大  # 环境设计  # 是从  # 感兴趣  # 要把  # 数据结构  # 给大家  # 可选  # 最简单  # 更多关于  # 中对 


相关文章: 如何通过VPS建站实现广告与增值服务盈利?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  如何在搬瓦工VPS快速搭建网站?  建站主机空间推荐 高性价比配置与快速部署方案解析  成都网站制作报价公司,成都工业用气开户费用?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  长沙企业网站制作哪家好,长沙水业集团官方网站?  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  北京制作网站的公司,北京铁路集团官方网站?  如何挑选最适合建站的高性能VPS主机?  如何自定义建站之星模板颜色并下载新样式?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  高端网站建设与定制开发一站式解决方案 中企动力  如何在Ubuntu系统下快速搭建WordPress个人网站?  网站企业制作流程,用什么语言做企业网站比较好?  如何在建站之星网店版论坛获取技术支持?  黑客如何通过漏洞一步步攻陷网站服务器?  ,网站推广常用方法?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  Python路径拼接规范_跨平台处理说明【指导】  测试制作网站有哪些,测试性取向的权威测试或者网站?  如何高效配置IIS服务器搭建网站?  如何快速搭建高效服务器建站系统?  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  建站之星展会模板:智能建站与自助搭建高效解决方案  如何将凡科建站内容保存为本地文件?  php条件判断怎么写_ifelse和switchcase的使用区别【对比】  C#如何使用XPathNavigator高效查询XML  定制建站流程解析:需求评估与SEO优化功能开发指南  TestNG的testng.xml配置文件怎么写  Python lxml的etree和ElementTree有什么区别  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何在IIS管理器中快速创建并配置网站?  如何在服务器上配置二级域名建站?  内网网站制作软件,内网的网站如何发布到外网?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  如何用AWS免费套餐快速搭建高效网站?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  宝塔Windows建站如何避免显示默认IIS页面?  如何快速建站并高效导出源代码?  西安大型网站制作公司,西安招聘网站最好的是哪个? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。