我有一个异步监听网络的程序,将连接到的客户端Socket保存到Hashtable,当点停止监听时遍历Hashtable,逐个Shutdown(),然后Close(),我希望这时服务器端不再接收任何连接,不过不知道如何断开服务端,导致被客户端的客户端还可以连接。public void StartListening()
{
    byte[] bytes = new byte[1024];
    listener = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp );    try
    {
        if ( !listener.IsBound )
        {
            listener.Bind( localServer );
            listener.Listen( 400 );
        }        while ( forever )
        {
            // 设置事件为无信号状态
            allDone.Reset();            // 开始异步监听连接
            listener.BeginAccept( new AsyncCallback( AcceptCallback ), listener );            // 等待一个连接直到继续
            allDone.WaitOne();
        }
    }
    catch ( Exception e )
    {
        Console.WriteLine( e.ToString() );
    }
}这个方法是在一个线程中开始调用的。