应用问题描述
在主线程中或UI线程中如果需要等待某个对象或任务,可能会调用到Thread.Sleep,此时将会阻塞主线程或UI线程,并且将会阻塞子线程,此时会造成UI界面没有响应,假死。
解决办法
在主线程中使用委托Delegate。
简单粗暴的解决办法
如果想要保持UI继续响应,调用
Application.DoEvents();
即可。
本文探讨了在主线程或UI线程中等待特定对象或任务时可能导致的问题,特别是使用Thread.Sleep导致UI界面假死的情况。文章介绍了如何通过使用委托Delegate来避免这类问题,并提供了一个简单的方法——调用Application.DoEvents()来保持UI响应。
在主线程中或UI线程中如果需要等待某个对象或任务,可能会调用到Thread.Sleep,此时将会阻塞主线程或UI线程,并且将会阻塞子线程,此时会造成UI界面没有响应,假死。
在主线程中使用委托Delegate。
如果想要保持UI继续响应,调用
Application.DoEvents();
即可。

被折叠的 条评论
为什么被折叠?