Partager via


Socket.BeginConnect Méthode

Définition

Commence une demande asynchrone pour une connexion hôte distante.

Surcharges

Nom Description
BeginConnect(EndPoint, AsyncCallback, Object)

Commence une demande asynchrone pour une connexion hôte distante.

BeginConnect(IPAddress, Int32, AsyncCallback, Object)

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un IPAddress numéro de port et un numéro de port.

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

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un IPAddress tableau et un numéro de port.

BeginConnect(String, Int32, AsyncCallback, Object)

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un nom d’hôte et un numéro de port.

BeginConnect(EndPoint, AsyncCallback, Object)

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

Commence une demande asynchrone pour une connexion hôte distante.

public:
 IAsyncResult ^ BeginConnect(System::Net::EndPoint ^ remoteEP, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginConnect(System.Net.EndPoint remoteEP, AsyncCallback? callback, 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

Paramètres

remoteEP
EndPoint

Qui EndPoint représente l’hôte distant.

callback
AsyncCallback

Délégué AsyncCallback .

state
Object

Objet qui contient des informations d’état pour cette requête.

Retours

Référence IAsyncResult à la connexion asynchrone.

Exceptions

remoteEP a la valeur null.

.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.

Il Socket a été fermé.

Un appelant plus haut dans la pile des appels n’a pas l’autorisation pour l’opération demandée.

Le Socket paramètre a été placé dans un état d’écoute en appelant Listen(Int32), ou une opération asynchrone est déjà en cours.

Remarques

Important

Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin* et End*) pour le nouveau développement. Utilisez plutôt les Taskéquivalents basés sur les valeurs.

Les protocoles orientés connexion peuvent utiliser la BeginAccept méthode pour commencer à accepter les tentatives de connexion entrantes. L’opération d’acceptation résultante est représentée par le retour IAsyncResult même s’il peut se terminer de façon synchrone. Avant d’appeler la BeginAccept méthode, vous devez appeler la Listen méthode pour écouter et mettre en file d’attente les demandes de connexion entrantes.

Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginAccept pour être informé de l’achèvement de l’opération d’acceptation. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel peut être exécuté en ligne, pendant l’appel à BeginAccept. Dans ce cas, la CompletedSynchronously propriété sur le retour IAsyncResult sera définie pour true indiquer que la méthode s’est terminée de façon synchrone. Utilisez la AsyncState propriété de l’objet IAsyncResult d’état passé à la BeginAccept méthode.

L’opération BeginAccept doit être effectuée en appelant la EndAccept méthode. En règle générale, la méthode est appelée par le délégué fourni AsyncCallback . EndAccept bloque le thread appelant jusqu’à ce que l’opération soit terminée.

Pour annuler un appel en attente à la BeginAccept méthode, fermez le Socket. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginAccept méthode est appelé. Un appel ultérieur à la EndAccept méthode lève un ObjectDisposedException (avant .NET 7) ou un SocketException (sur .NET 7+) pour indiquer que l’opération a été annulée.

Note

Vous pouvez utiliser la RemoteEndPoint propriété du retourné Socket pour identifier l’adresse réseau et le numéro de port de l’hôte distant.

Note

Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.

Note

Ce membre génère des informations de suivi lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Note

Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunt d’identité et le contexte appelant) est mis en cache pour les méthodes asynchrones Socket . Après la première utilisation d’un contexte particulier (une méthode asynchrone Socket spécifique, une instance spécifique et un rappel spécifique Socket ), les utilisations suivantes de ce contexte verront une amélioration des performances.

Voir aussi

S’applique à

BeginConnect(IPAddress, Int32, AsyncCallback, Object)

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un IPAddress numéro de port et un numéro de port.

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);
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

Paramètres

address
IPAddress

De IPAddress l’hôte distant.

port
Int32

Numéro de port de l’hôte distant.

requestCallback
AsyncCallback

Délégué AsyncCallback qui fait référence à la méthode à appeler lorsque l’opération de connexion est terminée.

state
Object

Objet défini par l’utilisateur qui contient des informations sur l’opération de connexion. Cet objet est transmis au requestCallback délégué une fois l’opération terminée.

Retours

Référence IAsyncResult à la connexion asynchrone.

Exceptions

address a la valeur null.

.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.

Il Socket a été fermé.

Ce Socket n’est pas dans la famille de sockets.

Le numéro de port n’est pas valide.

La longueur est égale address à zéro.

Le Socket paramètre a été placé dans un état d’écoute en appelant Listen(Int32), ou une opération asynchrone est déjà en cours.

Remarques

Important

Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin* et End*) pour le nouveau développement. Utilisez plutôt les Taskéquivalents basés sur les valeurs.

Si vous utilisez un protocole orienté connexion, la BeginConnect méthode démarre une requête asynchrone pour une connexion à l’objet endpoit spécifié par le remoteEP paramètre. Si vous utilisez un protocole sans connexion, BeginConnect établit un hôte distant par défaut.

Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginConnect pour être informé de la fin de l’opération de connexion. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel peut être exécuté en ligne, pendant l’appel à BeginConnect. Dans ce cas, la CompletedSynchronously propriété sur le retour IAsyncResult sera définie pour true indiquer que la méthode s’est terminée de façon synchrone. Utilisez la AsyncState propriété de l’objet IAsyncResult d’état passé à la BeginConnect méthode.

L’opération BeginConnect doit être effectuée en appelant la EndConnect méthode. En règle générale, la méthode est appelée par le délégué fourni AsyncCallback . EndConnect bloque le thread appelant jusqu’à ce que l’opération soit terminée.

Si vous utilisez un protocole sans connexion tel que UDP, vous n’avez pas besoin d’appeler BeginConnect avant d’envoyer et de recevoir des données. Vous pouvez utiliser BeginSendTo et BeginReceiveFrom communiquer avec un hôte distant. Si vous appelez BeginConnect, tous les datagrammes qui arrivent d’une adresse autre que la valeur par défaut spécifiée seront ignorés. Si vous souhaitez définir votre hôte distant par défaut sur une adresse de diffusion, vous devez d’abord appeler SetSocketOption et définir Diffusion sur true. Si vous ne pouvez pas, BeginConnect lève un SocketException.

Si vous utilisez un protocole orienté connexion et que vous n’appelez pas avant d’appeler BindBeginConnect, le fournisseur de services sous-jacent affecte l’adresse réseau locale et le numéro de port les plus appropriés. Si vous utilisez un protocole sans connexion, le fournisseur de services n’affecte pas d’adresse réseau locale et de numéro de port tant que vous n’appelez pas la méthode ou ReceiveFrom l’adresseBeginSend. Si vous souhaitez modifier l’hôte distant par défaut, appelez à nouveau la BeginConnect méthode avec le point de terminaison souhaité.

Pour annuler un appel en attente à la BeginConnect méthode, fermez le Socket. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginConnect méthode est appelé. Un appel ultérieur à la EndConnect méthode lève un ObjectDisposedException (avant .NET 7) ou un SocketException (sur .NET 7+) pour indiquer que l’opération a été annulée.

Note

Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.

Note

Si ce socket a été précédemment déconnecté, il BeginConnect doit être appelé sur un thread qui ne se termine pas tant que l’opération n’est pas terminée. Il s’agit d’une limitation du fournisseur sous-jacent.

Note

Ce membre génère des informations de suivi lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Note

Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunt d’identité et le contexte appelant) est mis en cache pour les méthodes asynchrones Socket . Après la première utilisation d’un contexte particulier (une méthode asynchrone Socket spécifique, une instance spécifique et un rappel spécifique Socket ), les utilisations suivantes de ce contexte verront une amélioration des performances.

Voir aussi

S’applique à

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

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un IPAddress tableau et un numéro de port.

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);
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

Paramètres

addresses
IPAddress[]

Au moins un IPAddress, désignant l’hôte distant.

port
Int32

Numéro de port de l’hôte distant.

requestCallback
AsyncCallback

Délégué AsyncCallback qui fait référence à la méthode à appeler lorsque l’opération de connexion est terminée.

state
Object

Objet défini par l’utilisateur qui contient des informations sur l’opération de connexion. Cet objet est transmis au requestCallback délégué une fois l’opération terminée.

Retours

Référence IAsyncResult aux connexions asynchrones.

Exceptions

addresses a la valeur null.

.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.

Il Socket a été fermé.

Cette méthode est valide pour les sockets qui utilisent InterNetwork ou InterNetworkV6.

Le numéro de port n’est pas valide.

La longueur est égale addresses à zéro.

Le Socket paramètre a été placé dans un état d’écoute en appelant Listen(Int32), ou une opération asynchrone est déjà en cours.

Remarques

Important

Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin* et End*) pour le nouveau développement. Utilisez plutôt les Taskéquivalents basés sur les valeurs.

Si vous utilisez un protocole orienté connexion, la BeginConnect méthode démarre une requête asynchrone pour une connexion à l’objet endpoit spécifié par le remoteEP paramètre. Si vous utilisez un protocole sans connexion, BeginConnect établit un hôte distant par défaut.

Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginConnect pour être informé de la fin de l’opération de connexion. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel peut être exécuté en ligne, pendant l’appel à BeginConnect. Dans ce cas, la CompletedSynchronously propriété sur le retour IAsyncResult sera définie pour true indiquer que la méthode s’est terminée de façon synchrone. Utilisez la AsyncState propriété de l’objet IAsyncResult d’état passé à la BeginConnect méthode.

L’opération BeginConnect doit être effectuée en appelant la EndConnect méthode. En règle générale, la méthode est appelée par le délégué fourni AsyncCallback . EndConnect bloque le thread appelant jusqu’à ce que l’opération soit terminée.

Si vous utilisez un protocole sans connexion tel que UDP, vous n’avez pas besoin d’appeler BeginConnect avant d’envoyer et de recevoir des données. Vous pouvez utiliser BeginSendTo et BeginReceiveFrom communiquer avec un hôte distant. Si vous appelez BeginConnect, tous les datagrammes qui arrivent d’une adresse autre que la valeur par défaut spécifiée seront ignorés. Si vous souhaitez définir votre hôte distant par défaut sur une adresse de diffusion, vous devez d’abord appeler SetSocketOption et définir Diffusion sur true. Si vous ne pouvez pas, BeginConnect lève un SocketException.

Si vous utilisez un protocole orienté connexion et que vous n’appelez pas avant d’appeler BindBeginConnect, le fournisseur de services sous-jacent affecte l’adresse réseau locale et le numéro de port les plus appropriés. Si vous utilisez un protocole sans connexion, le fournisseur de services n’affecte pas d’adresse réseau locale et de numéro de port tant que vous n’appelez pas la méthode ou ReceiveFrom l’adresseBeginSend. Si vous souhaitez modifier l’hôte distant par défaut, appelez à nouveau la BeginConnect méthode avec le point de terminaison souhaité.

Pour annuler un appel en attente à la BeginConnect méthode, fermez le Socket. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginConnect méthode est appelé. Un appel ultérieur à la EndConnect méthode lève un ObjectDisposedException (avant .NET 7) ou un SocketException (sur .NET 7+) pour indiquer que l’opération a été annulée.

Note

Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.

Note

Si ce socket a été précédemment déconnecté, il BeginConnect doit être appelé sur un thread qui ne se termine pas tant que l’opération n’est pas terminée. Il s’agit d’une limitation du fournisseur sous-jacent.

Note

Ce membre génère des informations de suivi lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Note

Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunt d’identité et le contexte appelant) est mis en cache pour les méthodes asynchrones Socket . Après la première utilisation d’un contexte particulier (une méthode asynchrone Socket spécifique, une instance spécifique et un rappel spécifique Socket ), les utilisations suivantes de ce contexte verront une amélioration des performances.

Voir aussi

S’applique à

BeginConnect(String, Int32, AsyncCallback, Object)

Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs
Source:
Socket.cs

Commence une demande asynchrone pour une connexion hôte distante. L’hôte est spécifié par un nom d’hôte et un numéro de port.

public:
 IAsyncResult ^ BeginConnect(System::String ^ host, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect(string host, int port, AsyncCallback? requestCallback, 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

Paramètres

host
String

Nom de l’hôte distant.

port
Int32

Numéro de port de l’hôte distant.

requestCallback
AsyncCallback

Délégué AsyncCallback qui fait référence à la méthode à appeler lorsque l’opération de connexion est terminée.

state
Object

Objet défini par l’utilisateur qui contient des informations sur l’opération de connexion. Cet objet est transmis au requestCallback délégué une fois l’opération terminée.

Retours

Référence IAsyncResult à la connexion asynchrone.

Exceptions

host a la valeur null.

Il Socket a été fermé.

Cette méthode est valide pour les sockets dans les familles ou InterNetworkV6 les InterNetwork familles.

Le numéro de port n’est pas valide.

Le Socket paramètre a été placé dans un état d’écoute en appelant Listen(Int32), ou une opération asynchrone est déjà en cours.

Remarques

Important

Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin* et End*) pour le nouveau développement. Utilisez plutôt les Taskéquivalents basés sur les valeurs.

Si vous utilisez un protocole orienté connexion, la BeginConnect méthode démarre une requête asynchrone pour une connexion à l’objet endpoit spécifié par le remoteEP paramètre. Si vous utilisez un protocole sans connexion, BeginConnect établit un hôte distant par défaut.

Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginConnect pour être informé de la fin de l’opération de connexion. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel peut être exécuté en ligne, pendant l’appel à BeginConnect. Dans ce cas, la CompletedSynchronously propriété sur le retour IAsyncResult sera définie pour true indiquer que la méthode s’est terminée de façon synchrone. Utilisez la AsyncState propriété de l’objet IAsyncResult d’état passé à la BeginConnect méthode.

L’opération BeginConnect doit être effectuée en appelant la EndConnect méthode. En règle générale, la méthode est appelée par le délégué fourni AsyncCallback . EndConnect bloque le thread appelant jusqu’à ce que l’opération soit terminée.

Si vous utilisez un protocole sans connexion tel que UDP, vous n’avez pas besoin d’appeler BeginConnect avant d’envoyer et de recevoir des données. Vous pouvez utiliser BeginSendTo et BeginReceiveFrom communiquer avec un hôte distant. Si vous appelez BeginConnect, tous les datagrammes qui arrivent d’une adresse autre que la valeur par défaut spécifiée seront ignorés. Si vous souhaitez définir votre hôte distant par défaut sur une adresse de diffusion, vous devez d’abord appeler SetSocketOption et définir Diffusion sur true. Si vous ne pouvez pas, BeginConnect lève un SocketException.

Si vous utilisez un protocole orienté connexion et que vous n’appelez pas avant d’appeler BindBeginConnect, le fournisseur de services sous-jacent affecte l’adresse réseau locale et le numéro de port les plus appropriés. Si vous utilisez un protocole sans connexion, le fournisseur de services n’affecte pas d’adresse réseau locale et de numéro de port tant que vous n’appelez pas la méthode ou ReceiveFrom l’adresseBeginSend. Si vous souhaitez modifier l’hôte distant par défaut, appelez à nouveau la BeginConnect méthode avec le point de terminaison souhaité.

Pour annuler un appel en attente à la BeginConnect méthode, fermez le Socket. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginConnect méthode est appelé. Un appel ultérieur à la EndConnect méthode lève un ObjectDisposedException (avant .NET 7) ou un SocketException (sur .NET 7+) pour indiquer que l’opération a été annulée.

Note

Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.

Note

Si ce socket a été précédemment déconnecté, il BeginConnect doit être appelé sur un thread qui ne se termine pas tant que l’opération n’est pas terminée. Il s’agit d’une limitation du fournisseur sous-jacent.

Note

Ce membre génère des informations de suivi lorsque vous activez le suivi réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.

Note

Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunt d’identité et le contexte appelant) est mis en cache pour les méthodes asynchrones Socket . Après la première utilisation d’un contexte particulier (une méthode asynchrone Socket spécifique, une instance spécifique et un rappel spécifique Socket ), les utilisations suivantes de ce contexte verront une amélioration des performances.

Voir aussi

S’applique à