private void AcceptCb(IAsyncResult ar) { try { Socket socket = listenfd.EndAccept(ar); int index = NewIndex(); if (index < 0) { socket.Close(); Console.Write(m_serverType + ":[警告]链接池已满"); } else { Conn conn = conns[index]; conn.Init(socket); string adr = conn.GetAdress(); Console.WriteLine(m_serverType + ":客户端连接 [" + adr + "] conn池ID:" + index); conn.socket.BeginReceive(conn.readBuff, conn.buffCount, conn.BuffRemain(), SocketFlags.None, ReceiveCb, conn); } // 继续握手下一个客户端 listenfd.BeginAccept(AcceptCb, null); } catch (Exception e) { Console.WriteLine(m_serverType + ":接受客户端异常:" + e.Message); } }