C# 在多线程中调用Timer
来源:互联网 发布:淘宝网上批发市场 编辑:程序博客网 时间:2024/06/06 01:01
最近在做毕业设计,发现一个有趣的现象,我自己想用timer控件的timer.start(); 方法启动timer,但是却启动不了。经过查找资料,发现timer控件的timer.start();方法不能从非Ui的线程启动。
后来查找论坛资料,发现以下的解决方案,亲测可行。
Sytem.Windows.Forms.Timer类的一个实例, 该实例适合于单线程的环境。使用Sytem.Timers.Timer类更加合适, 该类适合多线程的环境。
private void button2_Click(object sender, EventArgs e) //单击按钮触发的事件 { Thread t = new Thread(new ThreadStart(work)); t.Start(); } private void work() { System.Timers.Timer timer = new System.Timers.Timer(); timer.Interval = 500; timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed); timer.Enabled = true; } void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { Console.WriteLine("Test"); }
0 0
- C# 在多线程中调用Timer
- C#线程中调用TIMER
- c#在多线程中如何调用Winform
- C# 在多线程中如何调用Winform
- C#中不同类timer实现多线程
- [C#学习]在多线程中如何调用Winform
- [C#学习]在多线程中如何调用Winform
- 在C#中使用System.Timers.Timer
- 在C#中使用System.Timers.Timer
- 在C#中使用System.Timers.Timer
- 在C#的ajax中的timer触发函数中怎样调用页面元素和引用JS脚本函数?
- 在多线程中调用WinForm
- 在J2ME中使用Timer和TimerTask来实现多线程
- 在J2ME中使用Timer和TimerTask来实现多线程
- 在J2ME中使用Timer和TimerTask来实现多线程
- C#多线程——Timer
- C#多线程——Timer
- 在C#中退出多线程
- CentOS Linux解决Device eth0 does not seem to be present
- android从放弃到坚持放弃第六课(上)
- Material Capture(材质捕捉) shader 学习
- uvalive 5004 hdu 3709 Balanced Number 左右数字权和相等(数位dp)
- JavaScript 中的遍历
- C# 在多线程中调用Timer
- bzoj刷题记录4.10-4.14
- GPIO
- C语言复习笔记 9
- 机器学习算法——信息熵
- 【python学习笔记】1- 相关环境安装
- MySQL数据库(入门)(一)
- shell中变量的变量与eval命令
- 团体程序设计天梯赛L3-013 非常弹的球