C#中timer类的用法
C#中timer类的用法关于C#中timer类? 在C#里关于定时器类就有3个???1.定义在System.Windows.Forms里??? 2.定义在System.Threading.Timer类里??? 3.定义在System.Timers.Timer类里? System.Windows.Forms.Timer是应用于WinForm中的,它是通过Windows消息机制实现的,类似于VB或Delphi中的Timer控件,内部使用API? SetTimer实现的。它的主要缺点是计时不精确,而且必须有消息循环,Console? Application(控制台应用程序)无法使用。??? 例:? ==================================== ?2?????{ ?3????????? private? static? object?LockObject?=? new?Object(); ?4? ?5????????? // ?定义数据检查Timer ?6????????? static?Timer?CheckUpdatetimer?=? new?Timer(); ?7? ?8????????? ?检查更新锁 ?9????????? int?CheckUpDateLock?=?0; 10? 11????????? /// 12? ???????? ?设定数据检查Timer参数 13? /// 14????????? internal? void?GetTimerStart() 15?????????{ 16????????????? ?循环间隔时间(10分钟) 17?????????????CheckUpdatetimer.Interval?=?600000; 18????????????? ?允许Timer执行 19?????????????CheckUpdatetimer.Enabled?=? true; 20????????????? ?定义回调 21?????????????CheckUpdatetimer.Elapsed?+=? new?ElapsedEventHandler(CheckUpdatetimer_Elapsed); 22????????????? ?定义多次循环 23?????????????CheckUpdatetimer.AutoReset?=? 24?????????} 25? 26????????? 27? ?timer事件 28? 29? 30? 31????????? void?CheckUpdatetimer_Elapsed( object?sender,?ElapsedEventArgs?e) 32?????????{ 33???????????? ?加锁检查更新锁 34????????????? lock?(LockObject) 35?????????????{ 36????????????????? if?(CheckUpDateLock?==?0)?CheckUpDateLock?=?1; 37????????????????? else? return; 38?????????????}????????? 39??????????? 40???????????? More?code?goes?here 41? ?????????? 具体实现功能的方法 42????????????Check(); 43??????????????? ?解锁更新检查锁 44????????????? 45?????????????{ 46?????????????????CheckUpDateLock?=?0; 47?????????????}???????????? 48?????????} 49?} (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |