QuicStream 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示 QUIC 數據流。 QuicStream 可以是 單向的,也就是開端只能寫入,或是 雙向的,允許兩側都能寫入。
public ref class QuicStream sealed : System::IO::Stream
public sealed class QuicStream : System.IO.Stream
type QuicStream = class
inherit Stream
Public NotInheritable Class QuicStream
Inherits Stream
- 繼承
備註
QuicStream 可以和其他 用法一樣 Stream。
除了串流 API, QuicStream 還會暴露 QUIC 專屬的功能:
- WriteAsync(ReadOnlyMemory<Byte>, Boolean, CancellationToken):將串流的寫入端以單一操作方式關閉。
- CompleteWrites():關閉了寫作部分。
- Abort(QuicAbortDirection, Int64): 中止了直播的寫作或閱讀部分。
- WritesClosed回傳 a Task 當串流寫入端被關閉(優雅或終止)時將完成。
- ReadsClosed回傳 a Task 當串流讀取端被關閉(優雅或終止)時會完成。
欄位
| 名稱 | Description |
|---|---|
| DefaultPriority |
表示 QUIC 數據流。 QuicStream 可以是 單向的,也就是開端只能寫入,或是 雙向的,允許兩側都能寫入。 |
屬性
| 名稱 | Description |
|---|---|
| CanRead |
會有一個值表示 QuicStream 支持是否正在閱讀。 |
| CanSeek |
獲得一個值,表示支持是否 QuicStream 在尋求。 |
| CanTimeout |
會得到一個值,表示罐子是否 QuicStream 會超時。 |
| CanWrite |
獲得一個值來表示是否 QuicStream 支持寫作。 |
| Id |
取得串流ID。 |
| Length |
取得數據流上可用的數據長度。 此性質目前未被支援,且總是拋 NotSupportedException出 。 |
| Position |
取得或設定目前數據流中的位置。 此性質目前未被支援,且總是拋 NotSupportedException出 。 |
| Priority |
表示 QUIC 數據流。 QuicStream 可以是 單向的,也就是開端只能寫入,或是 雙向的,允許兩側都能寫入。 |
| ReadsClosed |
當讀取端關閉後,該 Task 任務會完成。 |
| ReadTimeout |
會取得或設定一個以毫秒為單位的值,決定串流在逾時前嘗試讀取的時間長短。 |
| Type |
能找到溪流類型。 |
| WritesClosed |
當 Task 寫作面關閉時,它會完成。 |
| WriteTimeout |
取得或設定一個毫秒級的值,決定串流在逾時前嘗試寫入的時間長短。 |
方法
| 名稱 | Description |
|---|---|
| Abort(QuicAbortDirection, Int64) | |
| BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
開始異步讀取作業。 (考慮改用 ReadAsync(Byte[], Int32, Int32) 。) |
| BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
開始異步寫入作業。 (考慮改用 WriteAsync(Byte[], Int32, Int32) 。) |
| Close() |
關閉目前串流並釋放與目前串流相關的資源(如套接字和檔案柄)。 與其呼叫此方法,不如確保溪流已被妥善處理。 (繼承來源 Stream) |
| CompleteWrites() |
優雅地完成了寫作部分。 |
| CopyTo(Stream, Int32) |
從目前串流讀取位元組,並依指定緩衝區大小寫入另一串流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CopyTo(Stream) |
從目前串流讀取位元組,然後寫入另一條串流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CopyToAsync(Stream, CancellationToken) |
使用指定的取消標記,以異步方式從目前數據流讀取位元組,並將其寫入另一個數據流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CopyToAsync(Stream, Int32, CancellationToken) |
非同步地從目前串流讀取位元組,並使用指定的緩衝區大小與取消標記寫入另一串流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CopyToAsync(Stream, Int32) |
非同步讀取目前串流的位元組,並以指定的緩衝區大小寫入另一串流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CopyToAsync(Stream) |
非同步地從目前串流讀取位元組,然後寫入另一條串流。 兩個串流的位置依複製的位元組數前進。 (繼承來源 Stream) |
| CreateWaitHandle() |
已淘汰.
已淘汰.
已淘汰.
分配一個 WaitHandle 物件。 (繼承來源 Stream) |
| Dispose() |
釋放 Stream所使用的所有資源。 (繼承來源 Stream) |
| Dispose(Boolean) |
釋放 未管理的資源, Stream 並可選擇性地釋放受管理資源。 (繼承來源 Stream) |
| DisposeAsync() |
若讀取端未完全耗盡,即 ReadsClosed 未完成或 ReadAsync(Memory<Byte>, CancellationToken) 未返回 |
| EndRead(IAsyncResult) |
等候暫止的異步讀取完成。 (考慮改用 ReadAsync(Byte[], Int32, Int32) 。) |
| EndWrite(IAsyncResult) |
結束異步寫入作業。 (考慮改用 WriteAsync(Byte[], Int32, Int32) 。) |
| Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
| Flush() |
在衍生類別中覆寫時,清除此數據流的所有緩衝區,並導致任何緩衝的數據寫入基礎裝置。 |
| FlushAsync() |
非同步清除此串流的所有緩衝區,並使任何緩衝資料寫入底層裝置。 (繼承來源 Stream) |
| FlushAsync(CancellationToken) |
非同步清除此串流的所有緩衝區,導致任何緩衝資料寫入底層裝置,並監控取消請求。 |
| GetHashCode() |
做為預設哈希函式。 (繼承來源 Object) |
| GetLifetimeService() |
已淘汰.
擷取控制這個實例存留期原則的目前存留期服務物件。 (繼承來源 MarshalByRefObject) |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| InitializeLifetimeService() |
已淘汰.
取得存留期服務物件,以控制這個實例的存留期原則。 (繼承來源 MarshalByRefObject) |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| MemberwiseClone(Boolean) |
建立目前 MarshalByRefObject 對象的淺層複本。 (繼承來源 MarshalByRefObject) |
| ObjectInvariant() |
已淘汰.
提供 。Contract (繼承來源 Stream) |
| Read(Byte[], Int32, Int32) |
在衍生類別中覆寫時,從目前數據流讀取位元組序列,並將數據流中的位置依讀取的位元組數目往前移。 |
| Read(Span<Byte>) |
在衍生類別中覆寫時,從目前數據流讀取位元組序列,並將數據流中的位置依讀取的位元組數目往前移。 |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
非同步讀取目前串流的位元組序列,依讀取位元組數前進串流中的位置,並監控取消請求。 |
| ReadAsync(Byte[], Int32, Int32) |
非同步讀取當前串流的位元組序列,並依讀取位元組數推進串流中的位置。 (繼承來源 Stream) |
| ReadAsync(Memory<Byte>, CancellationToken) |
非同步讀取目前串流的位元組序列,依讀取位元組數前進串流中的位置,並監控取消請求。 |
| ReadAtLeast(Span<Byte>, Int32, Boolean) |
從目前數據流讀取至少一個字節數目,並將數據流中的位置依讀取的位元組數目往前移。 (繼承來源 Stream) |
| ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken) |
以異步方式從目前數據流讀取至少一個字節數目、依讀取的位元組數目將數據流中的位置往前移,並監視取消要求。 (繼承來源 Stream) |
| ReadByte() |
從串流讀取一個位元組,並將串流中的位置往前推進一個位元組,若在串流末端則返回 -1。 |
| ReadExactly(Byte[], Int32, Int32) |
從目前串流讀取 |
| ReadExactly(Span<Byte>) |
從目前串流讀取位元組,並推進串流中的位置直到填 |
| ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
非同步讀取 |
| ReadExactlyAsync(Memory<Byte>, CancellationToken) |
非同步讀取目前串流的位元組,推進串流中的位置直到填 |
| Seek(Int64, SeekOrigin) |
將數據流的目前位置設定為指定的值。 此方法目前未被支援,且總是拋 NotSupportedException出 。 |
| SetLength(Int64) |
設定數據流的長度。 此方法目前未被支援,且總是拋 NotSupportedException出 。 |
| ToString() |
傳回表示目前 物件的字串。 |
| ToString() |
傳回表示目前 物件的字串。 (繼承來源 Object) |
| Write(Byte[], Int32, Int32) |
在衍生類別中覆寫時,將位元組序列寫入目前數據流,並依寫入的位元組數目將這個數據流中的目前位置往前移。 |
| Write(ReadOnlySpan<Byte>) |
在衍生類別中覆寫時,將位元組序列寫入目前數據流,並依寫入的位元組數目將這個數據流中的目前位置往前移。 |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
非同步地將一串位元組寫入目前串流,依照寫入位元組數將該串流中的當前位置前進,並監控取消請求。 |
| WriteAsync(Byte[], Int32, Int32) |
非同步地將一串位元組寫入目前串流,並依照寫入的位元組數將該串流中的當前位置往前推進。 (繼承來源 Stream) |
| WriteAsync(ReadOnlyMemory<Byte>, Boolean, CancellationToken) |
非同步地將一串位元組寫入目前串流,依照寫入位元組數將該串流中的當前位置前進,並監控取消請求。 |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
非同步地將一串位元組寫入目前串流,依照寫入位元組數將該串流中的當前位置前進,並監控取消請求。 |
| WriteByte(Byte) |
將位元組寫入數據流中的目前位置,並將數據流中的位置往前移一個字節。 |
擴充方法
| 名稱 | Description |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
設定如何執行從異步可處置專案傳回的工作等候。 |
| CopyToAsync(Stream, PipeWriter, CancellationToken) |
非同步讀取 的 Stream 位元組並使用消去標記寫入指定的 PipeWriter。 |