我有两个非 UI 线程。
- 线程 A
- 线程 B
线程 A 引发一个事件,线程 B 监听这个事件。当执行线程 B 事件侦听器时,它在线程 A 上执行(我认为,因为线程 A 引发了事件)。
我想做的是,能够在线程 A 上引发事件,如果线程 B 正在侦听,则侦听器应该在线程 B 上执行。
像这样的东西:
private void SomeMethodOnThreadA()
{
synchronizationContextOfThreadB.Send(new SendOrPostCallback(o =>
{
EventXy(this, new EventArgs());
}), null);
}
但这不起作用,因为我的线程是非 UI 线程。