昊仔

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

随笔分类 -  C#线程

摘要:System.Threading.Timer是一个简单的轻量计时器,它使用回调方法并由线程池线程提供服务。在必须更新用户界面的情况下,建议不要使用该计时器,因为它的回调不在用户界面线程上发生。在此类情况下,System.Windows.Threading.DispatcherTimer是更好的选择,因为其事件是在用户界面线程上引发的。多线程计时器1:System.Threading.Timer2:System.Timers.Timer特殊目的的单线程计时器:1:System.Windows.Forms.Timer(Windows Forms Timer)2:System.Windows.Thr 阅读全文
posted @ 2013-06-08 10:44 昊仔 阅读(1125) 评论(0) 推荐(0)

摘要:如何使用Application.DoEvents() 和 多线程?首先将以下代码放到Button事件里面:private void btnStart_Click(object sender, EventArgs e){for (int q = 0; q < 100000; q++){textBox1.Text = q.ToString();}}你会发现当点击Start按钮后,循环会一直进行,此时窗体会出现假死的状态,如:无法拖动。直到循环结束,textBox1中才会显示出结果。如何解决窗体的假死状态??修改以上代码如下:private void btnStart_Click(object 阅读全文
posted @ 2013-06-08 10:42 昊仔 阅读(533) 评论(0) 推荐(0)