コード例 #1
0
        public void Disconnect()
        {
            try
            {
                if (isInit)
                {
                    ConnectSocket?.Shutdown(System.Net.Sockets.SocketShutdown.Both);

                    //if(dispose)
                    //    DisconnectIt?.Invoke(this);
                }
            }
            catch (ObjectDisposedException)
            {
            }
            catch (Exception)
            {
            }
        }
コード例 #2
0
 private void _DisConnect()
 {
     Pool.TcpServer.OnDisConnect(this);
     ConnectDateTime = null;
     if (ConnectSocket != null)
     {
         try
         {
             ConnectSocket.Shutdown(SocketShutdown.Both);
         }
         catch (Exception e)
         {
             //日志记录
             Pool.TcpServer.Loger.Fatal(string.Format("CloseClientSocket Disconnect client {0} error, message: {1}", ConnectSocket, e.Message));
         }
         ConnectSocket.Dispose();
         ConnectSocket = null;
     }
 }
コード例 #3
0
 public void DisConnect()
 {
     OnDisConnect(this);
     if (ConnectSocket != null)
     {
         try
         {
             ConnectSocket.Shutdown(SocketShutdown.Both);
         }
         catch (Exception e)
         {
             //日志记录
             loger.Fatal(string.Format("CloseClientSocket Disconnect client {0} error, message: {1}", ConnectSocket, e.Message));
         }
         ConnectSocket.Dispose();
         ConnectSocket = null;
     }
     Clear();
     ReceiveEventArgs.Dispose();
     SendEventArgs.Dispose();
 }
コード例 #4
0
 //清理session
 public void Clear()
 {
     //释放引用,并清理缓存,包括释放协议对象等资源
     PacketProtocol.Clear();
     SessionData.Clear();//清理session数据
     if (ConnectSocket == null)
     {
         return;
     }
     try
     {
         ConnectSocket.Shutdown(SocketShutdown.Both);
     }
     catch (Exception e)
     {
         //日志记录
         loger.Fatal(string.Format("CloseClientSocket Disconnect client {0} error, message: {1}", ConnectSocket, e.Message));
     }
     ConnectSocket.Close();
     ConnectSocket = null;
     Server        = null;
 }
コード例 #5
0
 public void DisConnect()
 {
     if (OnDisConnect != null)
     {
         OnDisConnect(null, this);
     }
     //释放引用,并清理缓存,包括释放协议对象等资源
     PacketProtocol.Clear();
     if (ConnectSocket != null)
     {
         try
         {
             ConnectSocket.Shutdown(SocketShutdown.Both);
         }
         catch (Exception e)
         {
             loger.Fatal(e);
         }
     }
     ConnectSocket.Close();
     ConnectSocket = null;
 }