Provides a type providing a view into a
Note: This type predates the introduction of
Span<T>APIs in .NET, which may provide a valid alternative.
StreamSegment is similar to an
ArraySegment<T>. It provides a view over a
System.IO.Stream given an offset and a length. All accesses are bounds checked and get forwarded to the underlying stream using the specified offset.
Stream segment = new StreamSegment(stream, offset: 16, count: 32); var bytes = new byte; int count = segment.Read(bytes, 8, 4); // reads in stream at offset 24
This type is used by Reactor Core for recovery of operator state, which are stored with a length prefix encoding. The length is used to create a stream segment that gets passed to the operator to recover state from.