Stream.EndWrite(IAsyncResult) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
結束非同步的寫入作業。 (請考慮用 WriteAsync(Byte[], Int32, Int32) 替代。)
public:
virtual void EndWrite(IAsyncResult ^ asyncResult);
public virtual void EndWrite (IAsyncResult asyncResult);
abstract member EndWrite : IAsyncResult -> unit
override this.EndWrite : IAsyncResult -> unit
Public Overridable Sub EndWrite (asyncResult As IAsyncResult)
參數
- asyncResult
- IAsyncResult
未處理的非同步 I/O 要求的參考。
例外狀況
asyncResult
為 null
。
asyncResult
不是來自目前資料流的 BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 方法。
資料流已關閉或發生內部錯誤。
備註
在 .NET Framework 4 (含) 以前版本中,您必須使用方法 (例如 BeginWrite 和 EndWrite ) 實作非同步 I/O 作業。 這些方法仍可在 .NET Framework 4.5 中取得,以支援舊版程式碼; 不過,新的非同步方法(例如 ReadAsync 、 WriteAsync 、 CopyToAsync 和 FlushAsync )可協助您更輕鬆地執行非同步 i/o 作業。
EndWrite
每個都必須只呼叫一 IAsyncResult 次 BeginWrite 。
這個方法會封鎖,直到 I/O 作業完成為止。 在非同步寫入要求期間發生的錯誤(例如,在 i/o 要求期間發生的磁片錯誤)會發生線上程集區執行緒上,並且會在呼叫時顯示 EndWrite
。 呼叫時,不會顯示執行緒集區執行緒擲回的例外狀況 EndWrite
。