我有我的主GUI线程,第二个线程在它自己的ApplicationContext中运行(以保持它活着,即使没有工作要做).我想从我的GUI线程调用我的第二个线程上的方法,但是如果我只是调用thread.Method(); 它似乎在我的主GUI线程上运行并导致我的GUI无响应.在不同线程上调用方法的最佳方法是什么?
更新: 我真正想要做的是在两个线程之间进行通信,而不是与GUI通信.GUI恰好是需要与我的第二个线程进行通信的线程之一.
更新#2: 好的,我一定是错过了什么.我创建了一个事件和一个委托,并让我的工作线程订阅了该事件.但是当我调用Invoke(MyEvent)时; 从我的GUI线程中,工作线程最终在GUI线程上工作并挂起GUI线程直到它完成处理.在没有轮询静态对象的情况下,我正在尝试做什么?