【发布时间】:2013-12-12 23:46:33
【问题描述】:
我已经基本实现了this asynchronous server socket example(以及对应的客户端)。使用它,如果我完全按照示例进行操作,我可以响应客户端,即,如果对 Send() 的调用响应在 ReadCallback() 方法中。
但是,如果我尝试在此处之外发送响应,即在我附加到消息处理例程(在不同线程中运行)的回调中,我会收到 this 错误,说 Socket未连接。如果我尝试在 Server 代码中的其他位置发送响应,例如在侦听传入连接的 while(true) 循环中,我会收到相同的错误。
我在这里遗漏了一些基本的东西吗?
编辑:
好的,所以我读了Two-way communication in socket programming using C,我现在认为,根据那个答案,我必须修改我链接到的示例,以便我在返回的套接字上回复服务器通过accept 进程。 我的目标是在客户端和服务器连接后能够在接收回调之外调用Send(),例如从Main()。
请有人建议我如何修改示例以实现我想要的?我对此感到非常困惑,如果不需要的话,我不想创建一个单独的流(根据我发布的问题,我不需要......)。
【问题讨论】:
-
在您修改之前/之后发布相关代码 sn-p 将有助于我们更好地理解。说话很好,但通常不会准确描述代码。
标签: c# serversocket asyncsocket