打印本文 打印本文 关闭窗口 关闭窗口
C#Application.DoEvents();的作用
作者:佚名  文章来源:本站原创  点击数1458  更新时间:2012/11/12 12:57:01  文章录入:mintao  责任编辑:mintao
C#Application.DoEvents();的作用

Visual Studio里的摘要:处理当前在消息队列中的所有 Windows 消息。

交出CPU控制权,让系统可以处理队列中的所有Windows消息
比如在大运算量循环内,加Application.DoEvents可以防止界面停止响应


因为winform的消息循环是一个线程来处理,那么假如你的某个操作比较耗时,那么消息处理得等你这个耗时操作做完了才能继续,而Application.DoEvents方法就是允许你在耗时操作的内部调用它,而去处理消息队列中的消息。

像鼠标移动鼠标点击都是windows消息,如果耗时操作一直进行,那么界面就像死锁一样。

 

 while (true)

{

Application.DoEvents();

//条件OK,退出循环

 

}

打印本文 打印本文 关闭窗口 关闭窗口