这里的问题有点抽象。我们都知道,对于一个后台线程来更新一些 UI 元素。
Dispatcher.Invoke()
是唯一的选择(是吗?)。但是,Dispatcher.Invoke() 本身将更新任务委托给 UI 线程。考虑以下场景:
- 后台线程过于频繁地更新 UI。
- 数十个线程更新相同的 UI。
Dispatcher 对象将继续将更新任务委派给 UI 线程,并且 UI 线程可能会变慢。什么是可能的解决方案?我们如何在线程模型与 WPF 非常相似的Windows 窗体中解决这样的问题?WPF 是否提供任何其他线程技术?
问候,