Interface IBufferedMessageStream
Namespace: Void.Proxy.Api.Network.Streams.Manual.Binary
Assembly: Void.Proxy.Api.dll
Defines byte-oriented I/O with helpers that expose buffered data as binary messages.
public interface IBufferedMessageStream : IManualStream, IMessageStream, IMessageStreamBase, IDisposable, IAsyncDisposableImplements
IManualStream, IMessageStream, IMessageStreamBase, IDisposable, IAsyncDisposable
Methods
ReadAsMessage(int)
Reads available data into a buffered message, subject to a maximum size.
IBufferedBinaryMessage ReadAsMessage(int maxSize = 2048)Parameters
maxSize int
The maximum number of bytes to place in the returned message.
Returns
A buffered message owned by the caller.
ReadAsMessageAsync(int, CancellationToken)
Asynchronously reads available data into a buffered message, subject to a maximum size.
ValueTask<IBufferedBinaryMessage> ReadAsMessageAsync(int maxSize = 2048, CancellationToken cancellationToken = default)Parameters
maxSize int
The maximum number of bytes to place in the returned message.
cancellationToken CancellationToken
A token used to cancel the read.
Returns
ValueTask<IBufferedBinaryMessage>
A buffered message owned by the caller.
WriteAsMessage(IBufferedBinaryMessage)
Writes the buffered bytes contained in a message.
void WriteAsMessage(IBufferedBinaryMessage message)Parameters
message IBufferedBinaryMessage
The message whose buffered bytes are written.
WriteAsMessageAsync(IBufferedBinaryMessage, CancellationToken)
Asynchronously writes the buffered bytes contained in a message.
ValueTask WriteAsMessageAsync(IBufferedBinaryMessage message, CancellationToken cancellationToken = default)Parameters
message IBufferedBinaryMessage
The message whose buffered bytes are written.
cancellationToken CancellationToken
A token used to cancel the write.
Returns
A task that completes when the buffered bytes have been written.