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

Clear
public void Clear()
iMessageQueue.Clear()

Removes all messages from the queue.

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.