我正在编写服务器,需要能够向所有连接的客户端发送消息。
我正在尝试决定是否应该为每个连接的套接字创建 SocketAsyncEventArgs 并一次发送所有数据包。
另一种方法是使用单个 SocketAsyncEventArgs 并一个接一个地发送数据包。然后在 ProcessSend 方法(在 SendAsync 完成时调用)中调用 SendAsync 并拥有一个连接的套接字队列是很诱人的。但是如果由于某种原因 SendAsync 无法在合理的时间内完成怎么办?是否有任何情况会使其永远无法完成?