Socket.DisconnectAsync 方法

定義

多載

DisconnectAsync(SocketAsyncEventArgs)

開始非同步要求,以中斷遠端端點的連接。

DisconnectAsync(Boolean, CancellationToken)

中斷連線的通訊端與遠端主機的連接。

DisconnectAsync(SocketAsyncEventArgs)

來源:
Socket.cs
來源:
Socket.cs
來源:
Socket.cs

開始非同步要求,以中斷遠端端點的連接。

public:
 bool DisconnectAsync(System::Net::Sockets::SocketAsyncEventArgs ^ e);
public bool DisconnectAsync (System.Net.Sockets.SocketAsyncEventArgs e);
member this.DisconnectAsync : System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Function DisconnectAsync (e As SocketAsyncEventArgs) As Boolean

參數

e
SocketAsyncEventArgs

SocketAsyncEventArgs 物件,用於這個非同步通訊端作業。

傳回

若 I/O 作業暫止,則為 true。 作業完成時會引發與 e 參數有關的 Completed 事件。

若 I/O 作業同步完成,則為 false。 在這個情況下,就不會引發與 e 參數有關的 Completed 事件,而在方法呼叫傳回後會立即檢查做為參數傳遞的 e 物件,以擷取作業的結果。

例外狀況

e 參數不可以是 Null。

通訊端作業已使用 e 參數內指定的 SocketAsyncEventArgs 物件正在進行中。

嘗試存取通訊端時發生錯誤。

備註

使用連線導向通訊協定時,呼叫 方法會 DisconnectAsync 要求與遠端端點中斷連線。 如果您在 參數中 e 將 設定 SocketAsyncEventArgs.DisconnectReuseSockettrue ,則可以重複使用通訊端。

另請參閱

適用於

DisconnectAsync(Boolean, CancellationToken)

來源:
Socket.Tasks.cs
來源:
Socket.Tasks.cs
來源:
Socket.Tasks.cs

中斷連線的通訊端與遠端主機的連接。

public System.Threading.Tasks.ValueTask DisconnectAsync (bool reuseSocket, System.Threading.CancellationToken cancellationToken = default);
member this.DisconnectAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function DisconnectAsync (reuseSocket As Boolean, Optional cancellationToken As CancellationToken = Nothing) As ValueTask

參數

reuseSocket
Boolean

指出通訊端是否應該在中斷連線之後重複使用。

cancellationToken
CancellationToken

可用來取消非同步作業的解除標記。

傳回

在通訊端中斷連線時完成的非同步工作。

例外狀況

Socket物件已關閉。

嘗試存取通訊端時發生錯誤。

解除標記已取消。 此例外狀況會儲存在傳回的工作中。

備註

這個方法會儲存在工作中,它會傳回方法同步對應專案可以擲回的所有非使用例外狀況。 如果例外狀況儲存在傳回的工作中,則會在等候工作時擲回該例外狀況。 使用例外狀況,例如 ArgumentException 仍會同步擲回。 如需預存例外狀況,請參閱 擲回的 Disconnect(Boolean) 例外狀況。

適用於