【发布时间】:2012-03-03 19:56:46
【问题描述】:
这些都不起作用:
_uiDispatcher.Invoke(() => { });
_uiDispatcher.Invoke(delegate() { });
我要做的就是在我的主 UI 线程上调用一个内联方法。所以我在主线程上调用了这个:
_uiDispatcher = Dispatcher.CurrentDispatcher;
现在我想从另一个线程在该线程上执行一些代码。我该怎么做?我是否使用了错误的语法?
请注意,这不是 WPF 应用程序;我已经引用了WindowsBase,所以我可以访问Dispatcher 类。
【问题讨论】:
-
_uiDispatcher是什么类型?你使用了 UI 的同步对象吗? -
uiDispatcher是msdn.microsoft.com/en-us/library/… 的一个实例。我认为这是_uiDispatcher = Dispatcher.CurrentDispatcher隐含的。 “用户界面”没有同步对象 AFAIK....但是我将如何使用它?这对我有什么好处? -
啊...好吧,我认为线程调度程序不会工作。这是一个 WinForm 应用程序吗?
标签: c# multithreading dispatcher