Ger*_*ard 0 c# wpf task synchronizationcontext async-await
在wpf中,我有两个不同线程的窗口.
从窗口A'在线程中AI想要在窗口B'的Tread B中启动一个任务并等待线程A中的返回值.
它假设它可能但是如何?
你知道一个例子吗?
多个WPF UI线程是一种非常高级的方案.
您应该可以通过让线程B公开任务工厂来完成它:
TaskFactory _taskFactory;
public TaskFactory TaskFactory { get { return _taskFactory; } }
Run Code Online (Sandbox Code Playgroud)
在线程B的创业公司的某些时候做这样的事情:
// Startup code running on Thread B
_taskFactory = new TaskFactory(
TaskScheduler.FromCurrentSynchronizationContext());
Run Code Online (Sandbox Code Playgroud)
然后你可以从线程A使用工厂,允许线程A(或任何人)将工作排队到线程B:
await _threadB.TaskFactory.StartNew(() =>
{
...
});
Run Code Online (Sandbox Code Playgroud)