public async Task ConsumeAsync(CancellationToken cancellationToken = default) { while (!cancellationToken.IsCancellationRequested) { var messageBytes = await _channelReader.ReadAsync(cancellationToken).ConfigureAwait(false); var message = await _messageAdapter.AdaptAsync <Message <TKey, TValue> >(messageBytes).ConfigureAwait(false); MessageReceived?.Invoke(_channelReader, message); } }
public ValueTask <byte[]> ReadAsync(CancellationToken cancellationToken = default) => _inputChannel.ReadAsync(cancellationToken);