0

我正在编写服务器,需要能够向所有连接的客户端发送消息。

我正在尝试决定是否应该为每个连接的套接字创建 SocketAsyncEventArgs 并一次发送所有数据包。

另一种方法是使用单个 SocketAsyncEventArgs 并一个接一个地发送数据包。然后在 ProcessSend 方法(在 SendAsync 完成时调用)中调用 SendAsync 并拥有一个连接的套接字队列是很诱人的。但是如果由于某种原因 SendAsync 无法在合理的时间内完成怎么办?是否有任何情况会使其永远无法完成?

4

1 回答 1

0

SendAsync will return immediately. If you're talking about the send operation itself, it won't never complete, but it may take a long time if the socket is in an abnormal state.

于 2009-09-09T14:22:38.723 回答