private void Enqueue(Message message) { lock (_gate) { message.Seq = ++_seq; var token = ProtocolMessage.ToToken(message); _trace.Add(new Event(++_order, token, true)); _queue.Enqueue(token); } _count.Release(); }
private async Task SendAsync(Message message, CancellationToken cancellationToken) { var token = ProtocolMessage.ToToken(message); await _transport.SendAsync(token, cancellationToken).ConfigureAwait(false); }