private void Terminate(Exception exception) { _stream.Close(); _socket.Disconnect(false); _socket.Close(); this.Connected = false; if (OnDisconnect != null) { OnDisconnect?.Invoke(this, exception.Message); } else { throw new PlayerIOError(ErrorCode.InternalError, string.Concat(new[] { "Connection from ", _endpoint.Address, " was closed. ", ", message: ", exception.Message })); } }
public void Disconnect() { if (Socket == null) { return; } try { Socket.Disconnect(false); Socket.Close(); Socket = null; } catch (ObjectDisposedException) {} catch (Exception e) { Console.WriteLine(e.ToString()); } OnDisconnect(this, null); }
public void Disconnect() { if (_socket == null) { return; } try { _socket.Disconnect(false); _socket.Close(); _socket = null; } catch (ObjectDisposedException e) {} catch (Exception e) { Log.Warn("Error occurred while disconnecting from socket", e); } OnDisconnect(this, null); }