当前位置: 首页 > news >正文

dedecms网站版权信息微信公众号做视频网站

dedecms网站版权信息,微信公众号做视频网站,光纤网络是哪个公司的,怎么做不用数据库的网站TimerManager#xff1a;一个增强的定时器类#xff0c;带时间管理功能 在使用定时器时#xff0c;我们常常需要知道定时器的运行状态#xff0c;比如它已经运行了多久#xff0c;或者还剩下多少时间。然而#xff0c;.NET 的 System.Timers.Timer 类本身并没有直接提供…TimerManager一个增强的定时器类带时间管理功能 在使用定时器时我们常常需要知道定时器的运行状态比如它已经运行了多久或者还剩下多少时间。然而.NET 的 System.Timers.Timer 类本身并没有直接提供这些信息。为了满足这些需求我们扩展了 System.Timers.Timer创建了一个新的类——TimerManager它不仅继承了原生定时器的所有功能还新增了开始时间、已启动时间和剩余时间的属性。接下来我们将详细介绍这些新增功能及其使用方法。 一、新增功能介绍 1. 开始时间startTime startTime 是一个 DateTime 类型的字段用于记录定时器开始运行的时间点。在 TimerManager 的构造函数中我们通过 DateTime.Now 获取当前时间并将其赋值给 startTime。这样我们就能准确地知道定时器是从何时开始计时的。 2. 已启动时间ElapsedTime ElapsedTime 是一个 TimeSpan 类型的属性用于表示定时器从开始运行到当前时间的总时长。它的计算方式非常简单就是通过 DateTime.Now - startTime 得到一个时间差这个时间差就是定时器的已运行时间。TimeSpan 是一个非常合适的类型来表示时间间隔它提供了丰富的属性和方法方便我们对时间进行进一步的操作和格式化。 3. 剩余时间TimeRemaining TimeRemaining 同样是一个 TimeSpan 类型的属性它表示定时器从当前时间到下次触发事件之间剩余的时间。它的计算基于定时器的时间间隔interval和已运行时间ElapsedTime。具体来说我们通过 interval - ElapsedTime.TotalMilliseconds 计算出剩余时间的毫秒数然后使用 TimeSpan.FromMilliseconds 方法将其转换为 TimeSpan 类型。 二、使用方法 接下来我们将通过一个简单的示例来展示如何使用 TimerManager 类及其新增的时间管理功能。 示例代码 using System; using System.Timers;class Program {static void Main(string[] args){// 创建一个 TimerManager 实例设置时间间隔为 5 秒5000 毫秒TimerManager timer new TimerManager(5000);// 订阅 Elapsed 事件当定时器触发时执行任务timer.Elapsed (sender, e) {Console.WriteLine(定时器触发任务执行);Console.WriteLine($已启动时间{timer.ElapsedTime});Console.WriteLine($剩余时间{timer.TimeRemaining});};// 每隔一段时间打印当前的已启动时间和剩余时间System.Timers.Timer printTimer new System.Timers.Timer(1000); // 每秒打印一次printTimer.Elapsed (sender, e) {Console.WriteLine($已启动时间{timer.ElapsedTime});Console.WriteLine($剩余时间{timer.TimeRemaining});};printTimer.Start();// 等待定时器触发Console.WriteLine(定时器已启动等待触发...);Console.ReadLine();} } //定时器管理类public class TimerManager : System.Timers.Timer{public System.DateTime startTime;//开始时间 public double interval; //计时器时间//构造函数,传入计时器的时间public TimerManager(double interval) : base(interval){startTime System.DateTime.Now;this.interval interval;this.AutoReset false;//设置为false即只执行一次this.Enabled true;//设置为true即马上执行}// 已启动的时间单位毫秒public TimeSpan ElapsedTime{get{return DateTime.Now - startTime;}}// 剩余时间返回类型为 TimeSpanpublic TimeSpan TimeRemaining{get{return TimeSpan.FromMilliseconds(interval - ElapsedTime.TotalMilliseconds);}}} 示例输出 假设定时器的时间间隔为 5 秒程序运行后每秒打印一次 定时器已启动等待触发... 已启动时间00:00:01 剩余时间00:00:04 已启动时间00:00:02 剩余时间00:00:03 已启动时间00:00:03 剩余时间00:00:02 已启动时间00:00:04 剩余时间00:00:01 定时器触发任务执行 已启动时间00:00:05 剩余时间00:00:00 三、总结 通过在 TimerManager 类中新增开始时间、已启动时间和剩余时间的属性我们能够更直观地了解定时器的运行状态。这些属性的实现基于 DateTime 和 TimeSpan 类型提供了强大的时间和时间间隔处理功能。在实际开发中这些功能可以帮助我们更好地监控和管理定时任务例如在倒计时应用中实时显示剩余时间或者在日志中记录任务的执行时长。 希望这篇文章能够帮助你更好地理解和使用 TimerManager 类。如果你有任何问题或建议欢迎在评论区留言讨论
http://www.hkea.cn/news/14399181/

相关文章:

  • 什么网站教做美食3分钟宣传片制作费用
  • 中国建材工程建设协会网站重庆网站公司
  • 网站开发工作总结论文优秀自适应网站建设哪家好
  • 制作网页的网站费用属于资本性支出吗网络规划与设计专业
  • 深圳龙华 网站建设网站建设一条龙包括哪些服务
  • 博客网站开发背景及作用计算机网页制作题教程
  • 辽宁省建设厅网站官网交互做的很好的网站
  • 高端摄影网站模板wordpress 当前分类id
  • 天津北辰做网站企业品牌推广宣传方案
  • 网站开发有哪些要求东莞网站建设流程图
  • 做照片模板下载网站python官网
  • 成都网站建设方案推广网站欢迎页面设计
  • 邯郸网站建设品牌公司怎么免费建立网站
  • 自己动手建立个人网站cms建站系统
  • 仿素材网站营业执照年检网上申报入口
  • 国外皇色网站淘宝优化关键词的步骤
  • 太原市住房与城乡建设厅网站网站正在建设中英语怎么说
  • 工业企业网站建设浙江杭州
  • 好的建站软件网站建设与管理案例教程第三版课后答案
  • 房地产网站模版大连建设学院网站
  • 做网站赚钱多吗frontpage网页制作视频教程
  • python 快速搭建网站en support wordpress
  • 网上商城网站开发报告一级建造师报名官网入口
  • 做我的世界皮肤壁纸的网站wordpress自定义字段怎么用
  • 集翔网大网站建设房地产 网站 案例
  • 网站正能量晚上不用下载进入免费温州网站建设服务中心
  • 网站tag聚合怎么做智库建设网站方案
  • 免费 开源 企业网站网站服务器安全防护
  • 小型企业网站建设报告微网站 网页
  • iis一个文件夹配置多个网站搜索引擎营销名词解释