应用程序调度程序和控制调度程序

bri*_*ian 3 wpf controls dispatcher

假设我有名称为“ button1”的控制按钮和名称为“ doSomething”的功能。从另一个线程调用函数“ doSomething”。

我有两种方法可以从UI线程调用doSomething函数。

首先,从控制按钮调度程序

this.button1.Dispatcher.BeginInvoke(new Action(() => { doSomething(); }));
Run Code Online (Sandbox Code Playgroud)

其次,来自应用程序调度程序

this.Dispatcher.BeginInvoke(new Action(() => { doSomething(); }));
Run Code Online (Sandbox Code Playgroud)

结果是一样的,真​​正的不同是什么?

H.B*_*.B. 6

在同一线程拥有的所有控件中引用同一调度程序实例。没有区别。