語言

DeflateStream.EndWrite(IAsyncResult) 方法

定義

結束異步寫入作業。 (考慮改用這個 WriteAsync(Byte[], Int32, Int32) 方法。)

public:
 override void EndWrite(IAsyncResult ^ asyncResult);
public override void EndWrite(IAsyncResult asyncResult);
override this.EndWrite : IAsyncResult -> unit
Public Overrides Sub EndWrite (asyncResult As IAsyncResult)

參數

asyncResult
IAsyncResult

提及未完成的非同步輸入輸出請求。

例外狀況

asyncResult 是 null。

asyncResult 並非源自現有流中的任何 BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 方法。

在呼叫 WaitOne().

串流為 null。

-或-

結束寫入呼叫無效。

備註

從 .NET Framework 4.5 開始,你可以用這個 WriteAsync 方法執行非同步寫入操作。 此 EndWrite 方法在現有版本中仍可支援舊有程式碼;不過,使用新的非同步方法,你也可以更輕鬆地實作非同步 I/O 操作。 如需詳細資訊,請參閱 異步檔案 I/O。

EndWrite 每次呼叫該 BeginWrite 方法只需呼叫一次。

此方法會阻塞直到 I/O 操作完成。 在非同步寫入請求期間發生的錯誤,例如在 I/O 請求中磁碟故障,會在執行緒池執行緒中發生,並在呼叫 EndWrite時顯現。 執行緒池執行緒拋出的例外在呼叫 EndWrite時不會被看見。

適用於