Example #1
0
        public async ValueTask DisposeAsync()
        {
            await _lock.DisposeAsync();

            _requestResponseHandler.Dispose();
            _channelManager.Dispose();
            await _stream.DisposeAsync();
        }
Example #2
0
        public async ValueTask DisposeAsync()
        {
            await _lock.DisposeAsync();

            _consumerManager.Dispose();
            _producerManager.Dispose();
            _requestResponseHandler.Dispose();
            await _stream.DisposeAsync();
        }
        public async ValueTask DisposeAsync()
        {
            if (Interlocked.Exchange(ref _isDisposed, 1) != 0)
            {
                return;
            }

            await _lock.DisposeAsync().ConfigureAwait(false);

            _requestResponseHandler.Dispose();
            _channelManager.Dispose();
            await _stream.DisposeAsync().ConfigureAwait(false);
        }
Example #4
0
        public void Dispose()
        {
            _requestResponseHandler.Dispose();

            foreach (var channel in _consumerChannels.RemoveAll())
            {
                channel.Disconnected();
            }

            foreach (var channel in _producerChannels.RemoveAll())
            {
                channel.Disconnected();
            }
        }