C#在主线程中、UI线程中进行sleep而不希望界面失去响应、不希望子线程也被阻塞的办法
程序员文章站
2022-06-10 16:38:02
...
应用问题描述
在主线程中或UI线程中如果需要等待某个对象或任务,可能会调用到Thread.Sleep,此时将会阻塞主线程或UI线程,并且将会阻塞子线程,此时会造成UI界面没有响应,假死。
解决办法
在主线程中使用委托Delegate。
简单粗暴的解决办法
如果想要保持UI继续响应,调用
Application.DoEvents();
即可。