0
我正在嘗試基於異步套接字編寫簡單的客戶端服務器應用程序。一切工作正常,直到我嘗試連接多個客戶端。它們連接好,但只有「最新的一個」可以將數據發送到服務器,別人拋出異常:C#中的異步套接字
「並沒有返回IAsyncResult對象」
這裏是我的AcceptCallback代碼:
private void AcceptCallback(IAsyncResult AR)
{
try
{
_clientSocket = _serverSocket.EndAccept(AR);
_buffer = new byte[_clientSocket.ReceiveBufferSize];
_clientSocket.BeginReceive(_buffer, 0, _buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveCallback), null);
_serverSocket.BeginAccept(new AsyncCallback(AcceptCallback), null);
Console.WriteLine("Client connected!");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
任何想法有什麼不對?我在學習,所以它可能是一些愚蠢和明顯的東西,但我沒有看到它。