很多人肯定都遇到过Winform中异步线程更新UI的问题
只有主线程才可以更新UI,所有就用到了线程之间通信的问题
我比较喜欢使用SynchronizationContext这个东东
声明: private System.Threading.SynchronizationContext synchronizationContext;
在线程初始化后读取主线程
synchronizationContext = SynchronizationContext.Current;
在子线程中就可以如下更新UI了
synchronizationContext.Send(a => { this.Text = "test111"; }, null);
不过synchronizationContext本身也是有很多弊端和不足,不过用它就是一个字:"代码少"
转载请注明原文地址: https://ju.6miu.com/read-1308984.html