谁能告诉我什么时候使用Dispatcher,什么时候使用SynchronizationContext类?
一段时间以来,我一直在使用Dispatcher对来自后台线程的任务进行排队,然后我发现了SynchronizationContext。
发布于 2010-06-18 23:38:00
当使用WPF时,SynchronizationContext.Current对象的类型是DispatcherSynchronizationContext,它实际上只是Dispatcher对象的包装器,而Post和Send方法只是委托给Dispatcher.BeginInvoke和Dispatcher.Invoke。
因此,即使您决定使用SynchronizationContext,我也认为您最终会在幕后调用dispatcher。
此外,我认为使用SynchronizationContext有点麻烦,因为您必须将对当前上下文的引用传递给所有需要调用您的UI的线程。
发布于 2010-06-19 00:25:28
在内部使用了这种机制。
https://stackoverflow.com/questions/3069770
复制相似问题