【发布时间】:2012-04-11 12:51:47
【问题描述】:
我有一个带有 Socket 的类,监听客户端接收数据。当接收到新数据时,我想调用一个事件(如果已实现),但正如您所知,每个连接都有自己的线程,因此事件将在该线程上运行,而您知道其余的。您不能使用表单控件。 我如何调用事件(或调用它)。我对线程和网络编程真的很陌生,所以我很欣赏任何例子。
public class HVremotechooser
{
public delegate void NewOrder(Order order);
public event NewOrder nOrder;
//... (code elided)
public void ReceiveCallback(IAsyncResult AsyncCall) // new connection of client
{
//... (code elided)
if (nOrder != null)
nOrder(Order); // calling the event "nOrder"
//... (code elided)
}
}
谢谢。
【问题讨论】:
-
这是一个winforms问题吗?我相信您在问“如何在 ui 线程上调用调用?” stackoverflow.com/questions/142003/…
标签: c# multithreading events networking invoke