閱讀英文

共用方式為


Stream.EndWrite(IAsyncResult) 方法

定義

結束非同步的寫入作業。 (請考慮用 WriteAsync(Byte[], Int32, Int32) 替代。)

C#
public virtual void EndWrite (IAsyncResult asyncResult);

參數

asyncResult
IAsyncResult

未處理的非同步 I/O 要求的參考。

例外狀況

asyncResultnull

暫止寫入作業的控制代碼無法使用。

-或-

暫止的作業不支援寫入。

asyncResult 不是來自目前資料流的 BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 方法。

資料流已關閉或發生內部錯誤。

備註

在 .NET Framework 4 (含) 以前版本中,您必須使用方法 (例如 BeginWriteEndWrite ) 實作非同步 I/O 作業。 這些方法仍可在 .NET Framework 4.5 中使用,以支援舊版程式代碼;不過,新的異步方法,例如 ReadAsyncWriteAsyncCopyToAsyncFlushAsync,可協助您更輕鬆地實作異步 I/O 作業。

EndWrite每個都必須從BeginWrite呼叫一次IAsyncResult

這個方法會封鎖,直到 I/O 作業完成為止。 異步寫入要求期間發生的錯誤,例如 I/O 要求期間的磁碟失敗,會在線程集區線程上發生,並在呼叫 EndWrite時顯示。 呼叫 EndWrite時,線程集區線程擲回的例外狀況將不會顯示。

適用於

產品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

另請參閱