ISocketOutput Interface

Operations performed for buffered socket output
Namespace
Microsoft.AspNetCore.Server.Kestrel.Internal.Http
Assemblies
  • Microsoft.AspNetCore.Server.Kestrel

Syntax

public interface ISocketOutput
interface Microsoft.AspNetCore.Server.Kestrel.Internal.Http.ISocketOutput

Methods

ProducingComplete(Microsoft.AspNetCore.Server.Kestrel.Internal.Infrastructure.MemoryPoolIterator)

Commits the response data appended to the iterator returned from Microsoft.AspNetCore.Server.Kestrel.Internal.Http.ISocketOutput.ProducingStart. All the data up to <em>end</em> will be included in the response. A write operation isn’t guaranteed to be scheduled unless Microsoft.AspNetCore.Server.Kestrel.Internal.Http.ISocketOutput.Write(System.ArraySegment{System.Byte},System.Boolean) or Microsoft.AspNetCore.Server.Kestrel.Internal.Http.ISocketOutput.WriteAsync(System.ArraySegment{System.Byte},System.Boolean,System.Threading.CancellationToken) is called afterwards.

Arguments:end (Microsoft.AspNetCore.Server.Kestrel.Internal.Infrastructure.MemoryPoolIterator) – Points to the end of the committed data.
void ProducingComplete(MemoryPoolIterator end)
ProducingStart()

Returns an iterator pointing to the tail of the response buffer. Response data can be appended manually or by using Microsoft.AspNetCore.Server.Kestrel.Internal.Infrastructure.MemoryPoolIterator.CopyFrom(System.ArraySegment{System.Byte}). Be careful to ensure all appended blocks are backed by a Microsoft.AspNetCore.Server.Kestrel.Internal.Infrastructure.MemoryPoolSlab.

Return type:Microsoft.AspNetCore.Server.Kestrel.Internal.Infrastructure.MemoryPoolIterator
MemoryPoolIterator ProducingStart()
Write(System.ArraySegment<System.Byte>, System.Boolean)
void Write(ArraySegment<byte> buffer, bool chunk = false)
WriteAsync(System.ArraySegment<System.Byte>, System.Boolean, System.Threading.CancellationToken)
Return type:System.Threading.Tasks.Task
Task WriteAsync(ArraySegment<byte> buffer, bool chunk = false, CancellationToken cancellationToken = null)