void Dispose(bool disposing)
        {
            if (_disposed)
            {
                return;
            }
            if (disposing)
            {
                _disposed = true;

                _socket = _socket.CloseAndDispose();
            }

            _disposed = true;
        }