Example #1
0
 public void ShutDown() //关闭服务器
 {
     if (this.customizeHander != null)
     {
         customizeHander.SeverShutDown();
     }
     if (this.listenSocket != null)
     {
         this.listenSocket.Close();//停止侦听
     }
     foreach (UserTokenEventArgs userToken in this.UserDic.GetAll())
     {
         try
         {
             EventHandler <UserTokenEventArgs> handler = OnClientDisconnect;
             if ((handler != null) && (null != userToken))
             {
                 handler(this, userToken);//抛出连接断开事件
             }
         }
         catch { }
     }
     this.UserDic.Clear();
     maxNumberAcceptedClients.Release();
     recvStackPool.Clear();
     sendStackPool.Clear();
     tCheckClientHeartbeat.Abort();//终止线程
     tCheckClientHeartbeat.Join();
 }
Example #2
0
 public void ShutDown() //关闭服务器
 {
     if (this.customizeHander != null)
     {
         customizeHander.SeverShutDown();
     }
     if (this.listenSocket != null)
     {
         this.listenSocket.Close();//停止侦听
     }
     recvStackPool.Cleal();
     sendStackPool.Cleal();
     tCheckClientHeartbeat.Abort();//终止线程
     tCheckClientHeartbeat.Join();
 }