【发布时间】:2015-11-21 20:20:00
【问题描述】:
在 WPF 中,每个调度程序都有自己的线程是真的吗?来自Dispatcher.BeginInvoke的description:
在 Dispatcher 所在的线程上异步执行委托 相关联。
我们知道一个调度器最多只能关联一个线程。两个不同的线程可以共享一个调度器吗?如果我理解正确,Dispatcher 是一个控制消息泵的抽象,即应用程序可以向 Dispatcher 发送消息,它负责在其线程上执行它们。如果我错了,请纠正我。
【问题讨论】:
-
线程和调度程序之间存在一对一的关系。也就是说,多个线程可以在 UI 线程调度程序上排队工作(例如,在 WPF 中,您使用
Application.Current.Disptacher)。如果您想与工作线程中的 UI 元素进行交互,您实际上必须这样做。
标签: c# wpf multithreading