IMessageQueue
StockSharp.Messages
Describes a message queue with asynchronous semantics.
Implements: ICloneable<IMessageQueue>, ICloneable
Properties
Count
public int Count { get; }
value = iMessageQueue.Count
Gets the current number of messages buffered in the queue.
IsClosed
public bool IsClosed { get; }
value = iMessageQueue.IsClosed
Gets a value indicating whether the queue is closed.
Methods
Close
public void Close()
iMessageQueue.Close()
Closes the queue and prevents new messages from being enqueued.
DequeueAsync
public ValueTask<Message> DequeueAsync(CancellationToken cancellationToken)
result = iMessageQueue.DequeueAsync(cancellationToken)
Removes and returns the next message from the queue asynchronously.
- cancellationToken
- Cancellation token.
Returns: The next message in the queue.
Enqueue
public ValueTask Enqueue(Message message, CancellationToken cancellationToken)
result = iMessageQueue.Enqueue(message, cancellationToken)
Enqueues the specified message.
- message
- The message to enqueue.
- cancellationToken
- Cancellation token.
Open
public void Open()
iMessageQueue.Open()
Opens the queue and allows enqueue and dequeue operations.
ReadAllAsync
public IAsyncEnumerable<Message> ReadAllAsync(CancellationToken cancellationToken)
result = iMessageQueue.ReadAllAsync(cancellationToken)
Returns an async enumerable that yields messages from the queue.
- cancellationToken
- Cancellation token.
Returns: Async enumerable of messages.