Socket.BeginConnect Methode

Definitie

Begint een asynchrone aanvraag voor een externe hostverbinding.

Overloads

Name Description
BeginConnect(EndPoint, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding.

BeginConnect(IPAddress, Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een IPAddress en een poortnummer.

BeginConnect(IPAddress[], Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een IPAddress matrix en een poortnummer.

BeginConnect(String, Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een hostnaam en een poortnummer.

BeginConnect(EndPoint, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding.

public:
 IAsyncResult ^ BeginConnect(System::Net::EndPoint ^ remoteEP, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginConnect(System.Net.EndPoint remoteEP, AsyncCallback callback, object state);
member this.BeginConnect : System.Net.EndPoint * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (remoteEP As EndPoint, callback As AsyncCallback, state As Object) As IAsyncResult

Parameters

remoteEP
EndPoint

Een EndPoint die de externe host vertegenwoordigt.

callback
AsyncCallback

De AsyncCallback gedelegeerde.

state
Object

Een object met statusinformatie voor deze aanvraag.

Retouren

Een IAsyncResult die verwijst naar de asynchrone verbinding.

Uitzonderingen

remoteEP is null.

alleen .NET Framework: er is een fout opgetreden bij het openen van de socket.

Een aanroeper hoger in de aanroepstack heeft geen machtiging voor de aangevraagde bewerking.

De Socket is in een luisterstatus geplaatst door aan te roepen Listen(Int32)of er wordt al een asynchrone bewerking uitgevoerd.

Opmerkingen

Important

Dit is een compatibiliteits-API. Het wordt afgeraden om de APM - (Begin* en End*) methoden voor nieuwe ontwikkeling te gebruiken. Gebruik in plaats daarvan de Taskequivalenten op basis van -.

Verbindingsgeoriënteerde protocollen kunnen de BeginAccept methode gebruiken om binnenkomende verbindingspogingen te accepteren. De resulterende acceptbewerking wordt vertegenwoordigd door de geretourneerde IAsyncResult bewerking, ook al kan deze synchroon worden voltooid. Voordat u de BeginAccept methode aanroept, moet u de Listen methode aanroepen om te luisteren naar binnenkomende verbindingsaanvragen en deze in de wachtrij te plaatsen.

U kunt een callback doorgeven waarnaar wordt geïmplementeerd AsyncCallbackBeginAccept om een melding te ontvangen over de voltooiing van de acceptatiebewerking. Als de onderliggende netwerkstack de bewerking synchroon voltooit, kan de callback inline worden uitgevoerd, tijdens de aanroep naar BeginAccept. In dit geval wordt de CompletedSynchronously eigenschap op de geretourneerde IAsyncResult waarde ingesteld om aan te true geven dat de methode synchroon is voltooid. Gebruik de AsyncState eigenschap van de IAsyncResult functie om het statusobject te verkrijgen dat is doorgegeven aan de BeginAccept methode.

De BeginAccept bewerking moet worden voltooid door de EndAccept methode aan te roepen. Normaal gesproken wordt de methode aangeroepen door de opgegeven AsyncCallback gemachtigde. EndAccept blokkeert de aanroepende thread totdat de bewerking is voltooid.

Als u een aanroep in behandeling naar de BeginAccept methode wilt annuleren, sluit u de Socket. Wanneer de Close methode wordt aangeroepen terwijl een asynchrone bewerking wordt uitgevoerd, wordt de callback aangeroepen die aan de BeginAccept methode wordt geleverd. Een volgende aanroep van de methode EndAccept genereert een ObjectDisposedException (vóór .NET 7) of een SocketException (op .NET 7+) om aan te geven dat de bewerking is geannuleerd.

Note

U kunt de RemoteEndPoint eigenschap van de geretourneerde Socket gebruiken om het netwerkadres en poortnummer van de externe host te identificeren.

Note

Als u een SocketExceptionontvangt, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode te verkrijgen.

Note

Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.

Note

De uitvoeringscontext (de beveiligingscontext, de geïmiteerde gebruiker en de aanroepende context) wordt in de cache opgeslagen voor de asynchrone Socket methoden. Na het eerste gebruik van een bepaalde context (een specifieke asynchrone Socket methode, een specifiek Socket exemplaar en een specifieke callback), zien volgende toepassingen van die context een prestatieverbetering.

Zie ook

Van toepassing op

BeginConnect(IPAddress, Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een IPAddress en een poortnummer.

public:
 IAsyncResult ^ BeginConnect(System::Net::IPAddress ^ address, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect(System.Net.IPAddress address, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : System.Net.IPAddress * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (address As IPAddress, port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult

Parameters

address
IPAddress

De IPAddress externe host.

port
Int32

Het poortnummer van de externe host.

requestCallback
AsyncCallback

Een AsyncCallback gemachtigde die verwijst naar de methode die moet worden aangeroepen wanneer de verbindingsbewerking is voltooid.

state
Object

Een door de gebruiker gedefinieerd object met informatie over de verbindingsbewerking. Dit object wordt doorgegeven aan de requestCallback gemachtigde wanneer de bewerking is voltooid.

Retouren

Een IAsyncResult die verwijst naar de asynchrone verbinding.

Uitzonderingen

address is null.

alleen .NET Framework: er is een fout opgetreden bij het openen van de socket.

De Socket is niet in de socketfamilie.

Het poortnummer is ongeldig.

De lengte is address nul.

De Socket is in een luisterstatus geplaatst door aan te roepen Listen(Int32)of er wordt al een asynchrone bewerking uitgevoerd.

Opmerkingen

Important

Dit is een compatibiliteits-API. Het wordt afgeraden om de APM - (Begin* en End*) methoden voor nieuwe ontwikkeling te gebruiken. Gebruik in plaats daarvan de Taskequivalenten op basis van -.

Als u een verbindingsgeoriënteerd protocol gebruikt, start de BeginConnect methode een asynchrone aanvraag voor een verbinding met de eindpoit die is opgegeven door de remoteEP parameter. Als u een protocol zonder verbinding gebruikt, BeginConnect maakt u een standaard externe host.

U kunt een callback doorgeven waarnaar wordt geïmplementeerd AsyncCallbackBeginConnect om een melding te ontvangen over de voltooiing van de verbindingsbewerking. Als de onderliggende netwerkstack de bewerking synchroon voltooit, kan de callback inline worden uitgevoerd, tijdens de aanroep naar BeginConnect. In dit geval wordt de CompletedSynchronously eigenschap op de geretourneerde IAsyncResult waarde ingesteld om aan te true geven dat de methode synchroon is voltooid. Gebruik de AsyncState eigenschap van de IAsyncResult functie om het statusobject te verkrijgen dat is doorgegeven aan de BeginConnect methode.

De BeginConnect bewerking moet worden voltooid door de EndConnect methode aan te roepen. Normaal gesproken wordt de methode aangeroepen door de opgegeven AsyncCallback gemachtigde. EndConnect blokkeert de aanroepende thread totdat de bewerking is voltooid.

Als u een verbindingsloos protocol zoals UDP gebruikt, hoeft u niet aan te roepen BeginConnect voordat u gegevens verzendt en ontvangt. U kunt deze gebruiken BeginSendTo en BeginReceiveFrom communiceren met een externe host. Als u aanroept BeginConnect, worden gegevensgrammen die afkomstig zijn van een ander adres dan de opgegeven standaardwaarde, verwijderd. Als u uw standaard externe host wilt instellen op een broadcast-adres, moet u eerst bellen SetSocketOption en Broadcast instellen op true. Als je dat niet kunt, BeginConnect gooi dan een SocketException.

Als u een verbindingsgeoriënteerd protocol gebruikt en niet belt voordat u aanroept BindBeginConnect, wijst de onderliggende serviceprovider het meest geschikte lokale netwerkadres en poortnummer toe. Als u een verbindingsloos protocol gebruikt, wijst de serviceprovider geen lokaal netwerkadres en poortnummer toe totdat u de BeginSend of ReceiveFrom methode aanroept. Als u de standaard externe host wilt wijzigen, roept u de BeginConnect methode opnieuw aan met het gewenste eindpunt.

Als u een aanroep in behandeling naar de BeginConnect methode wilt annuleren, sluit u de Socket. Wanneer de Close methode wordt aangeroepen terwijl een asynchrone bewerking wordt uitgevoerd, wordt de callback aangeroepen die aan de BeginConnect methode wordt geleverd. Een volgende aanroep van de methode EndConnect genereert een ObjectDisposedException (vóór .NET 7) of een SocketException (op .NET 7+) om aan te geven dat de bewerking is geannuleerd.

Note

Als u een SocketExceptionontvangt, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode te verkrijgen.

Note

Als deze socket eerder is losgekoppeld, BeginConnect moet deze worden aangeroepen op een thread die pas wordt afgesloten als de bewerking is voltooid. Dit is een beperking van de onderliggende provider.

Note

Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.

Note

De uitvoeringscontext (de beveiligingscontext, de geïmiteerde gebruiker en de aanroepende context) wordt in de cache opgeslagen voor de asynchrone Socket methoden. Na het eerste gebruik van een bepaalde context (een specifieke asynchrone Socket methode, een specifiek Socket exemplaar en een specifieke callback), zien volgende toepassingen van die context een prestatieverbetering.

Zie ook

Van toepassing op

BeginConnect(IPAddress[], Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een IPAddress matrix en een poortnummer.

public:
 IAsyncResult ^ BeginConnect(cli::array <System::Net::IPAddress ^> ^ addresses, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect(System.Net.IPAddress[] addresses, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : System.Net.IPAddress[] * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (addresses As IPAddress(), port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult

Parameters

addresses
IPAddress[]

Ten minste één IPAddress, waarbij de externe host wordt toegewezen.

port
Int32

Het poortnummer van de externe host.

requestCallback
AsyncCallback

Een AsyncCallback gemachtigde die verwijst naar de methode die moet worden aangeroepen wanneer de verbindingsbewerking is voltooid.

state
Object

Een door de gebruiker gedefinieerd object met informatie over de verbindingsbewerking. Dit object wordt doorgegeven aan de requestCallback gemachtigde wanneer de bewerking is voltooid.

Retouren

Een IAsyncResult die verwijst naar de asynchrone verbindingen.

Uitzonderingen

addresses is null.

alleen .NET Framework: er is een fout opgetreden bij het openen van de socket.

Deze methode is geldig voor sockets die gebruikmaken InterNetwork van of InterNetworkV6.

Het poortnummer is ongeldig.

De lengte is addresses nul.

De Socket is in een luisterstatus geplaatst door aan te roepen Listen(Int32)of er wordt al een asynchrone bewerking uitgevoerd.

Opmerkingen

Important

Dit is een compatibiliteits-API. Het wordt afgeraden om de APM - (Begin* en End*) methoden voor nieuwe ontwikkeling te gebruiken. Gebruik in plaats daarvan de Taskequivalenten op basis van -.

Als u een verbindingsgeoriënteerd protocol gebruikt, start de BeginConnect methode een asynchrone aanvraag voor een verbinding met de eindpoit die is opgegeven door de remoteEP parameter. Als u een protocol zonder verbinding gebruikt, BeginConnect maakt u een standaard externe host.

U kunt een callback doorgeven waarnaar wordt geïmplementeerd AsyncCallbackBeginConnect om een melding te ontvangen over de voltooiing van de verbindingsbewerking. Als de onderliggende netwerkstack de bewerking synchroon voltooit, kan de callback inline worden uitgevoerd, tijdens de aanroep naar BeginConnect. In dit geval wordt de CompletedSynchronously eigenschap op de geretourneerde IAsyncResult waarde ingesteld om aan te true geven dat de methode synchroon is voltooid. Gebruik de AsyncState eigenschap van de IAsyncResult functie om het statusobject te verkrijgen dat is doorgegeven aan de BeginConnect methode.

De BeginConnect bewerking moet worden voltooid door de EndConnect methode aan te roepen. Normaal gesproken wordt de methode aangeroepen door de opgegeven AsyncCallback gemachtigde. EndConnect blokkeert de aanroepende thread totdat de bewerking is voltooid.

Als u een verbindingsloos protocol zoals UDP gebruikt, hoeft u niet aan te roepen BeginConnect voordat u gegevens verzendt en ontvangt. U kunt deze gebruiken BeginSendTo en BeginReceiveFrom communiceren met een externe host. Als u aanroept BeginConnect, worden gegevensgrammen die afkomstig zijn van een ander adres dan de opgegeven standaardwaarde, verwijderd. Als u uw standaard externe host wilt instellen op een broadcast-adres, moet u eerst bellen SetSocketOption en Broadcast instellen op true. Als je dat niet kunt, BeginConnect gooi dan een SocketException.

Als u een verbindingsgeoriënteerd protocol gebruikt en niet belt voordat u aanroept BindBeginConnect, wijst de onderliggende serviceprovider het meest geschikte lokale netwerkadres en poortnummer toe. Als u een verbindingsloos protocol gebruikt, wijst de serviceprovider geen lokaal netwerkadres en poortnummer toe totdat u de BeginSend of ReceiveFrom methode aanroept. Als u de standaard externe host wilt wijzigen, roept u de BeginConnect methode opnieuw aan met het gewenste eindpunt.

Als u een aanroep in behandeling naar de BeginConnect methode wilt annuleren, sluit u de Socket. Wanneer de Close methode wordt aangeroepen terwijl een asynchrone bewerking wordt uitgevoerd, wordt de callback aangeroepen die aan de BeginConnect methode wordt geleverd. Een volgende aanroep van de methode EndConnect genereert een ObjectDisposedException (vóór .NET 7) of een SocketException (op .NET 7+) om aan te geven dat de bewerking is geannuleerd.

Note

Als u een SocketExceptionontvangt, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode te verkrijgen.

Note

Als deze socket eerder is losgekoppeld, BeginConnect moet deze worden aangeroepen op een thread die pas wordt afgesloten als de bewerking is voltooid. Dit is een beperking van de onderliggende provider.

Note

Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.

Note

De uitvoeringscontext (de beveiligingscontext, de geïmiteerde gebruiker en de aanroepende context) wordt in de cache opgeslagen voor de asynchrone Socket methoden. Na het eerste gebruik van een bepaalde context (een specifieke asynchrone Socket methode, een specifiek Socket exemplaar en een specifieke callback), zien volgende toepassingen van die context een prestatieverbetering.

Zie ook

Van toepassing op

BeginConnect(String, Int32, AsyncCallback, Object)

Begint een asynchrone aanvraag voor een externe hostverbinding. De host wordt opgegeven door een hostnaam en een poortnummer.

public:
 IAsyncResult ^ BeginConnect(System::String ^ host, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect(string host, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : string * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (host As String, port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult

Parameters

host
String

De naam van de externe host.

port
Int32

Het poortnummer van de externe host.

requestCallback
AsyncCallback

Een AsyncCallback gemachtigde die verwijst naar de methode die moet worden aangeroepen wanneer de verbindingsbewerking is voltooid.

state
Object

Een door de gebruiker gedefinieerd object met informatie over de verbindingsbewerking. Dit object wordt doorgegeven aan de requestCallback gemachtigde wanneer de bewerking is voltooid.

Retouren

Een IAsyncResult die verwijst naar de asynchrone verbinding.

Uitzonderingen

host is null.

Deze methode is geldig voor sockets in de InterNetwork of InterNetworkV6 families.

Het poortnummer is ongeldig.

De Socket is in een luisterstatus geplaatst door aan te roepen Listen(Int32)of er wordt al een asynchrone bewerking uitgevoerd.

Opmerkingen

Important

Dit is een compatibiliteits-API. Het wordt afgeraden om de APM - (Begin* en End*) methoden voor nieuwe ontwikkeling te gebruiken. Gebruik in plaats daarvan de Taskequivalenten op basis van -.

Als u een verbindingsgeoriënteerd protocol gebruikt, start de BeginConnect methode een asynchrone aanvraag voor een verbinding met de eindpoit die is opgegeven door de remoteEP parameter. Als u een protocol zonder verbinding gebruikt, BeginConnect maakt u een standaard externe host.

U kunt een callback doorgeven waarnaar wordt geïmplementeerd AsyncCallbackBeginConnect om een melding te ontvangen over de voltooiing van de verbindingsbewerking. Als de onderliggende netwerkstack de bewerking synchroon voltooit, kan de callback inline worden uitgevoerd, tijdens de aanroep naar BeginConnect. In dit geval wordt de CompletedSynchronously eigenschap op de geretourneerde IAsyncResult waarde ingesteld om aan te true geven dat de methode synchroon is voltooid. Gebruik de AsyncState eigenschap van de IAsyncResult functie om het statusobject te verkrijgen dat is doorgegeven aan de BeginConnect methode.

De BeginConnect bewerking moet worden voltooid door de EndConnect methode aan te roepen. Normaal gesproken wordt de methode aangeroepen door de opgegeven AsyncCallback gemachtigde. EndConnect blokkeert de aanroepende thread totdat de bewerking is voltooid.

Als u een verbindingsloos protocol zoals UDP gebruikt, hoeft u niet aan te roepen BeginConnect voordat u gegevens verzendt en ontvangt. U kunt deze gebruiken BeginSendTo en BeginReceiveFrom communiceren met een externe host. Als u aanroept BeginConnect, worden gegevensgrammen die afkomstig zijn van een ander adres dan de opgegeven standaardwaarde, verwijderd. Als u uw standaard externe host wilt instellen op een broadcast-adres, moet u eerst bellen SetSocketOption en Broadcast instellen op true. Als je dat niet kunt, BeginConnect gooi dan een SocketException.

Als u een verbindingsgeoriënteerd protocol gebruikt en niet belt voordat u aanroept BindBeginConnect, wijst de onderliggende serviceprovider het meest geschikte lokale netwerkadres en poortnummer toe. Als u een verbindingsloos protocol gebruikt, wijst de serviceprovider geen lokaal netwerkadres en poortnummer toe totdat u de BeginSend of ReceiveFrom methode aanroept. Als u de standaard externe host wilt wijzigen, roept u de BeginConnect methode opnieuw aan met het gewenste eindpunt.

Als u een aanroep in behandeling naar de BeginConnect methode wilt annuleren, sluit u de Socket. Wanneer de Close methode wordt aangeroepen terwijl een asynchrone bewerking wordt uitgevoerd, wordt de callback aangeroepen die aan de BeginConnect methode wordt geleverd. Een volgende aanroep van de methode EndConnect genereert een ObjectDisposedException (vóór .NET 7) of een SocketException (op .NET 7+) om aan te geven dat de bewerking is geannuleerd.

Note

Als u een SocketExceptionontvangt, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode te verkrijgen.

Note

Als deze socket eerder is losgekoppeld, BeginConnect moet deze worden aangeroepen op een thread die pas wordt afgesloten als de bewerking is voltooid. Dit is een beperking van de onderliggende provider.

Note

Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.

Note

De uitvoeringscontext (de beveiligingscontext, de geïmiteerde gebruiker en de aanroepende context) wordt in de cache opgeslagen voor de asynchrone Socket methoden. Na het eerste gebruik van een bepaalde context (een specifieke asynchrone Socket methode, een specifiek Socket exemplaar en een specifieke callback), zien volgende toepassingen van die context een prestatieverbetering.

Zie ook

Van toepassing op