Struct DiskSpacePool.Segment
Provides the random access to the data within the segment.
Inherited Members
Namespace: DotNext.Runtime.Caching
Assembly: DotNext.IO.dll
Syntax
public readonly struct DiskSpacePool.Segment : IDisposable, IAsyncDisposableMethods
| Edit this page View SourceCreateStream()
Creates a stream representing this segment.
Declaration
public Stream CreateStream()Returns
| Type | Description | 
|---|---|
| Stream | A stream representing this segment. | 
Remarks
The returned stream has a length equal to MaxSegmentSize. You can adjust it by calling SetLength(long).
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Declaration
public void Dispose()DisposeAsync()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
Declaration
public ValueTask DisposeAsync()Returns
| Type | Description | 
|---|---|
| ValueTask | A task that represents the asynchronous dispose operation. | 
Read(Span<byte>, int)
Reads the data from the segment at the specified offset.
Declaration
public int Read(Span<byte> buffer, int offset = 0)Parameters
| Type | Name | Description | 
|---|---|---|
| Span<byte> | buffer | The buffer to be modified with the data from the segment. | 
| int | offset | The offset within the segment. | 
Returns
| Type | Description | 
|---|---|
| int | The number of bytes written to  | 
Exceptions
| Type | Condition | 
|---|---|
| ArgumentOutOfRangeException | 
 | 
| ObjectDisposedException | The segment has been returned to the pool. | 
ReadAsync(Memory<byte>, int, CancellationToken)
Reads the data from the segment at the specified offset.
Declaration
public ValueTask<int> ReadAsync(Memory<byte> buffer, int offset = 0, CancellationToken token = default)Parameters
| Type | Name | Description | 
|---|---|---|
| Memory<byte> | buffer | The buffer to be modified with the data from the segment. | 
| int | offset | The offset within the segment. | 
| CancellationToken | token | The token that can be used to cancel the operation. | 
Returns
| Type | Description | 
|---|---|
| ValueTask<int> | The number of bytes written to  | 
Exceptions
| Type | Condition | 
|---|---|
| ArgumentOutOfRangeException | 
 | 
| ObjectDisposedException | The segment has been returned to the pool. | 
| OperationCanceledException | The operation has been canceled. | 
ToString()
Returns the fully qualified type name of this instance.
Declaration
public override string? ToString()Returns
| Type | Description | 
|---|---|
| string | The fully qualified type name. | 
Overrides
| Edit this page View SourceWrite(ReadOnlySpan<byte>, int)
Writes to the segment at the specified offset.
Declaration
public void Write(ReadOnlySpan<byte> buffer, int offset = 0)Parameters
| Type | Name | Description | 
|---|---|---|
| ReadOnlySpan<byte> | buffer | The data to be written. | 
| int | offset | The offset within the segment. | 
Exceptions
| Type | Condition | 
|---|---|
| ObjectDisposedException | The segment has been returned to the pool. | 
| ArgumentOutOfRangeException | 
 | 
WriteAsync(ReadOnlyMemory<byte>, int, CancellationToken)
Writes to the segment at the specified offset.
Declaration
public ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, int offset = 0, CancellationToken token = default)Parameters
| Type | Name | Description | 
|---|---|---|
| ReadOnlyMemory<byte> | buffer | The data to be written. | 
| int | offset | The offset within the segment. | 
| CancellationToken | token | The token that can be used to cancel the operation. | 
Returns
| Type | Description | 
|---|---|
| ValueTask | 
Exceptions
| Type | Condition | 
|---|---|
| ObjectDisposedException | The segment has been returned to the pool. | 
| ArgumentOutOfRangeException | 
 | 
| OperationCanceledException | The operation has been canceled. |