Class NamedPipeServerTransport
Namespace: DotBoxD.Transports.NamedPipes
Assembly: DotBoxD.Transports.NamedPipes.dll
Server transport for accepting DotBoxD connections over a named pipe.
public sealed class NamedPipeServerTransport : IServerTransport, IAsyncDisposableInheritance
Section titled “Inheritance”object ← NamedPipeServerTransport
Implements
Section titled “Implements”IServerTransport, IAsyncDisposable
Inherited Members
Section titled “Inherited Members”object.Equals(object), object.Equals(object, object), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object, object), object.ToString()
Constructors
Section titled “Constructors”NamedPipeServerTransport(string, int, int)
Section titled “ NamedPipeServerTransport(string, int, int)”public NamedPipeServerTransport(string pipeName, int maxAllowedServerInstances = -1, int maxMessageSize = 16777216)Parameters
Section titled “Parameters”pipeName string
maxAllowedServerInstances int
maxMessageSize int
Fields
Section titled “Fields”DefaultFrameReadIdleTimeout
Section titled “ DefaultFrameReadIdleTimeout”Default idle timeout applied to accepted connections’ frame reads
(30 seconds). Mirrors TcpConnection.DefaultFrameReadIdleTimeout so accepted pipe
connections get the same finite slow-loris defense the TCP transport applies by default.
public static readonly TimeSpan DefaultFrameReadIdleTimeoutField Value
Section titled “Field Value”Properties
Section titled “Properties”FrameReadIdleTimeout
Section titled “ FrameReadIdleTimeout”Idle timeout applied to accepted connections’ frame reads (slow-loris
defense). null uses DotBoxD.Transports.NamedPipes.NamedPipeServerTransport.DefaultFrameReadIdleTimeout;
System.Threading.Timeout.InfiniteTimeSpan disables it. See DotBoxD.Services.Transport.StreamConnection.
public TimeSpan? FrameReadIdleTimeout { get; init; }Property Value
Section titled “Property Value”Methods
Section titled “Methods”AcceptAsync(CancellationToken)
Section titled “ AcceptAsync(CancellationToken)”Accepts an incoming connection.
public Task<IRpcChannel> AcceptAsync(CancellationToken ct = default)Parameters
Section titled “Parameters”Returns
Section titled “Returns”DisposeAsync()
Section titled “ DisposeAsync()”Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
public ValueTask DisposeAsync()Returns
Section titled “Returns”A task that represents the asynchronous dispose operation.
StartAsync(CancellationToken)
Section titled “ StartAsync(CancellationToken)”Starts listening for connections.
public Task StartAsync(CancellationToken ct = default)Parameters
Section titled “Parameters”Returns
Section titled “Returns”StopAsync(CancellationToken)
Section titled “ StopAsync(CancellationToken)”Stops listening for connections.
public Task StopAsync(CancellationToken ct = default)