This is a managed sockets connector for the System.IO.Pipelines API, intended to act as a stop-gap while there is
no official such connector. Pipelines are pretty useless if you can't actually connect them to anything...
It draws inspiration from:
Channels.Networking.Sockets - the original "managed sockets" provider I wrote back when Pipelines were ChannelsSystem.IO.Pipelines - the "corefx" version of the aboveKestrel.Transport.Sockets - purely server-side connector used for ASP.NET Core, using pieces of the aboveand aims to provide a high-performance implementation of the IDuplexPipe interface, providing both client and server APIs. At the moment the API is very preliminary.
Key APIs:
SocketConnection - interacting with a Socket as a pipeStreamConnection - interacting with a Stream as a pipe, or a pipe as a StreamArena / Arena<T> / Sequence<T> / Reference<T> - arena allocation APIsIt is provided under the MIT license.
C#
99.6%
This is a managed sockets connector for the System.IO.Pipelines API, intended to act as a stop-gap while there is
no official such connector. Pipelines are pretty useless if you can't actually connect them to anything...
It draws inspiration from:
Channels.Networking.Sockets - the original "managed sockets" provider I wrote back when Pipelines were ChannelsSystem.IO.Pipelines - the "corefx" version of the aboveKestrel.Transport.Sockets - purely server-side connector used for ASP.NET Core, using pieces of the aboveand aims to provide a high-performance implementation of the IDuplexPipe interface, providing both client and server APIs. At the moment the API is very preliminary.
Key APIs:
SocketConnection - interacting with a Socket as a pipeStreamConnection - interacting with a Stream as a pipe, or a pipe as a StreamArena / Arena<T> / Sequence<T> / Reference<T> - arena allocation APIsIt is provided under the MIT license.
C#
99.6%