Class OdfPagedGatherWritableStream
Buffers writes into fixed-size pages and flushes them as gathered write batches when possible. 將寫入資料緩衝為固定大小頁面,並在可行時以聚合寫入批次刷寫。
public sealed class OdfPagedGatherWritableStream : Stream, IDisposable, IAsyncDisposable
- Inheritance
-
OdfPagedGatherWritableStream
- Implements
- Inherited Members
Constructors
OdfPagedGatherWritableStream(Stream)
Short overload of OdfPagedGatherWritableStream that accepts underlyingStream; remaining optional parameters use defaults and forward to the full overload. 便利多載:提供 underlyingStream;其餘可選參數使用預設值並轉呼叫最長 OdfPagedGatherWritableStream 多載。
public OdfPagedGatherWritableStream(Stream underlyingStream)
Parameters
underlyingStreamStream
OdfPagedGatherWritableStream(Stream, int)
Short overload of OdfPagedGatherWritableStream that accepts underlyingStream and pageSize; remaining optional parameters use defaults and forward to the full overload. 便利多載:提供 underlyingStream 與 pageSize;其餘可選參數使用預設值並轉呼叫最長 OdfPagedGatherWritableStream 多載。
public OdfPagedGatherWritableStream(Stream underlyingStream, int pageSize)
Parameters
OdfPagedGatherWritableStream(Stream, int, int)
Short overload of OdfPagedGatherWritableStream that accepts underlyingStream, pageSize, and pagesPerFlush; remaining optional parameters use defaults and forward to the full overload. 便利多載:提供 underlyingStream、pageSize 與 pagesPerFlush;其餘可選參數使用預設值並轉呼叫最長 OdfPagedGatherWritableStream 多載。
public OdfPagedGatherWritableStream(Stream underlyingStream, int pageSize, int pagesPerFlush)
Parameters
OdfPagedGatherWritableStream(Stream, int, int, bool)
Initializes a new instance of the OdfPagedGatherWritableStream class. 初始化 OdfPagedGatherWritableStream 類別的新執行個體。
public OdfPagedGatherWritableStream(Stream underlyingStream, int pageSize, int pagesPerFlush, bool leaveOpen)
Parameters
underlyingStreamStreamThe stream that receives flushed bytes. / 接收刷寫位元組的底層資料流。
pageSizeintThe byte size of each page. / 每個頁面的位元組大小。
pagesPerFlushintThe maximum number of pages gathered into one flush. / 每次聚合刷寫的最大頁面數。
leaveOpenboolA value indicating whether the underlying stream remains open after disposal. / 指出處置後是否保持底層資料流開啟。
Exceptions
- ArgumentNullException
Thrown when
underlyingStreamis null. / 當underlyingStream為 null 時擲出。- ArgumentOutOfRangeException
Thrown when
pageSizeorpagesPerFlushis less than 1. / 當pageSize或pagesPerFlush小於 1 時擲出。
Properties
CanRead
Provides the CanRead member. 提供 CanRead 成員。
public override bool CanRead { get; }
Property Value
CanSeek
Provides the CanSeek member. 提供 CanSeek 成員。
public override bool CanSeek { get; }
Property Value
CanWrite
Provides the CanWrite member. 提供 CanWrite 成員。
public override bool CanWrite { get; }
Property Value
Length
Performs length. 執行 Length。
public override long Length { get; }
Property Value
Position
Gets or sets the stream position. 取得或設定資料流位置。
public override long Position { get; set; }
Property Value
Methods
Dispose(bool)
Releases unmanaged resources. 釋放非受控資源。
protected override void Dispose(bool disposing)
Parameters
disposingbool
Flush()
Performs flush. 執行 Flush。
public override void Flush()
FlushAsync(CancellationToken)
Performs flush async. 執行 Flush Async。
public override Task FlushAsync(CancellationToken cancellationToken)
Parameters
cancellationTokenCancellationToken
Returns
Read(byte[], int, int)
Performs the Read operation. 執行 Read 作業。
public override int Read(byte[] buffer, int offset, int count)
Parameters
Returns
Seek(long, SeekOrigin)
Performs seek. 執行 Seek。
public override long Seek(long offset, SeekOrigin origin)
Parameters
offsetlongoriginSeekOrigin
Returns
SetLength(long)
Sets length. 設定 Length。
public override void SetLength(long value)
Parameters
valuelong
Write(byte[], int, int)
Performs the Write operation. 執行 Write 作業。
public override void Write(byte[] buffer, int offset, int count)
Parameters
WriteAsync(byte[], int, int, CancellationToken)
Writes async. 寫入 Async。
public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
Parameters
bufferbyte[]offsetintcountintcancellationTokenCancellationToken