System.Net.WebSockets.WebSocketHttpListenerDuplexStream.MultipleWriteAsync C# (CSharp) Method

MultipleWriteAsync() public method

public MultipleWriteAsync ( IList sendBuffers, CancellationToken cancellationToken ) : Task
sendBuffers IList
cancellationToken System.Threading.CancellationToken
return Task
        public Task MultipleWriteAsync(IList<ArraySegment<byte>> sendBuffers, CancellationToken cancellationToken)
        {
            Debug.Assert(_inOpaqueMode, "The stream MUST be in opaque mode at this point.");
            Debug.Assert(sendBuffers != null, "'sendBuffers' MUST NOT be NULL.");
            Debug.Assert(sendBuffers.Count == 1 || sendBuffers.Count == 2,
                "'sendBuffers.Count' MUST be either '1' or '2'.");

            if (sendBuffers.Count == 1)
            {
                ArraySegment<byte> buffer = sendBuffers[0];
                return WriteAsync(buffer.Array, buffer.Offset, buffer.Count, cancellationToken);
            }

            return MultipleWriteAsyncCore(sendBuffers, cancellationToken);
        }