Sdílet prostřednictvím


Socket.BeginDisconnect(Boolean, AsyncCallback, Object) Metoda

Definice

Zahájí asynchronní požadavek na odpojení od vzdáleného koncového bodu.

public:
 IAsyncResult ^ BeginDisconnect(bool reuseSocket, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback? callback, object? state);
public IAsyncResult BeginDisconnect (bool reuseSocket, AsyncCallback callback, object state);
member this.BeginDisconnect : bool * AsyncCallback * obj -> IAsyncResult
Public Function BeginDisconnect (reuseSocket As Boolean, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

reuseSocket
Boolean

truepokud lze tento soket znovu použít po ukončení připojení; v opačném případě . false

callback
AsyncCallback

Delegát.AsyncCallback

state
Object

Objekt, který obsahuje informace o stavu tohoto požadavku.

Návraty

Objekt IAsyncResult , který odkazuje na asynchronní operaci.

Výjimky

Objekt Socket byl uzavřen.

Pouze rozhraní .NET Framework a .NET 5 a starší: Při pokusu o přístup k soketu došlo k chybě.

Poznámky

Důležité

Toto je rozhraní API pro kompatibilitu. Pro nový vývoj nedoporučujeme používat metody APM (Begin* a End*). Místo toho použijte ekvivalenty založené na Task.

Pokud používáte protokol orientovaný na připojení, můžete voláním BeginDisconnect metody zahájit odpojení od vzdáleného koncového bodu. Pokud reuseSocket je true, můžete soket znovu použít.

Zpětné volání, které se implementuje AsyncCallback do BeginDisconnect , můžete předat, abyste dostali oznámení o dokončení operace odpojení. Všimněte si, že pokud podkladový síťový zásobník dokončí operaci synchronně, může být zpětné volání spuštěno přímo během volání nástroje BeginDisconnect. V tomto případě CompletedSynchronously bude vlastnost vrácena IAsyncResult na hodnotu, která true označuje, že metoda byla dokončena synchronně. AsyncState K získání objektu IAsyncResult stavu předaného metodě použijte vlastnost objektuBeginDisconnect.

Operace BeginDisconnect musí být dokončena voláním EndDisconnect metody. Obvykle je metoda vyvolána poskytnutým AsyncCallback delegátem. EndDisconnect zablokuje volající vlákno, dokud se operace nedokonči.

Poznámka

Pokud se SocketException zobrazí výjimka, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby.

Poznámka

Tento člen poskytuje trasovací informace, když je ve vaší aplikaci povoleno trasování sítě. Další informace najdete v tématu Trasování sítě v rozhraní .NET Framework.

Platí pro