Socket.EndSendFile(IAsyncResult) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
結束檔案的暫止非同步傳送。
public:
void EndSendFile(IAsyncResult ^ asyncResult);
public void EndSendFile (IAsyncResult asyncResult);
member this.EndSendFile : IAsyncResult -> unit
Public Sub EndSendFile (asyncResult As IAsyncResult)
參數
- asyncResult
- IAsyncResult
IAsyncResult 物件,儲存這個非同步作業的狀態資訊。
例外狀況
僅限 .NET 8+:套接字未連線到遠端主機。
.NET Framework、.NET Core 和 .NET 5-6:Socket已關閉。
asyncResult
是空的。
asyncResult
不會經由對 BeginSendFile(String, AsyncCallback, Object) 方法的呼叫傳回。
備註
重要
這是相容性 API。 不建議使用 APM (Begin*
和 End*
) 方法來進行新的開發。 請改用型對 Task
等專案。
EndSendFile 完成 由 BeginSend啟動的作業。 您必須傳遞 IAsyncResult 比 BeginSend 對呼叫所建立的 。
如果您使用無連線通訊協定, EndSendFile 請封鎖直到傳送數據報為止。 如果您使用連接導向通訊協定, EndSendFile 請封鎖直到傳送整個檔案為止。 不保證您傳送的數據會立即出現在網路上。 為了提升網路效率,基礎系統可能會延遲傳輸,直到收集大量的傳出數據為止。 方法成功完成 BeginSendFile 表示基礎系統有空間可緩衝處理網路傳送的數據。
注意
如果您收到 SocketException,請使用 SocketException.ErrorCode 屬性來取得特定的錯誤碼。 取得此程式代碼之後,請參閱 Windows Sockets 第 2 版 API 錯誤碼 檔,以取得錯誤的詳細描述。
注意
在應用程式中啟用網路追蹤時,這個成員會輸出追蹤資訊。 如需詳細資訊,請參閱 .NET Framework 中的網路追蹤。