码迷,mamicode.com
首页 > 编程语言 > 详细

【C#】多线程解决UI界面卡死的问题

时间:2017-08-23 15:54:40      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:htm   界面   .com   blog   com   ini   www.   blank   卡死   

一个经典的例子:


问题:

都说Invoke是同步的,BeginInvoke是异步的,但为何用BeginInvoke做耗时操作依然会卡死UI?

http://www.cnblogs.com/blosaa/archive/2013/05/30/3107381.html

 

小结:

BeginInvoke的异步是指相对于调用BeginInvoke的线程异步,而不是相对于UI线程异步。所以在UI线程调用BeginInvoke依然会卡死UI。  

解决办法是开一个子线程,在子线程中调用BeginInvoke,而不是在UI线程中调用BeginInvoke。

【C#】多线程解决UI界面卡死的问题

标签:htm   界面   .com   blog   com   ini   www.   blank   卡死   

原文地址:http://www.cnblogs.com/guxin/p/7418542.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!