Socket.BeginAccept Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Démarre une opération asynchrone pour accepter une tentative de connexion entrante.
Surcharges
BeginAccept(AsyncCallback, Object) |
Démarre une opération asynchrone pour accepter une tentative de connexion entrante. |
BeginAccept(Int32, AsyncCallback, Object) |
Lance une opération asynchrone d'acceptation d'une tentative de connexion entrante et reçoit le premier bloc de données envoyé par l'application cliente. |
BeginAccept(Socket, Int32, AsyncCallback, Object) |
Lance une opération asynchrone d'acceptation d'une tentative de connexion entrante provenant d'un socket spécifié et reçoit le premier bloc de données envoyé par l'application cliente. |
BeginAccept(AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Démarre une opération asynchrone pour accepter une tentative de connexion entrante.
public:
IAsyncResult ^ BeginAccept(AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (AsyncCallback callback, object state);
member this.BeginAccept : AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- callback
- AsyncCallback
Délégué AsyncCallback.
- state
- Object
Objet qui contient les informations d’état de cette demande.
Retours
IAsyncResult qui fait référence à la création asynchrone de Socket.
Exceptions
L’objet Socket a été fermé.
Le socket acceptant n'écoute pas les connexions. Vous devez appeler Bind(EndPoint) et Listen(Int32) avant d'appeler BeginAccept(AsyncCallback, Object).
- ou -
Le socket accepté est lié.
receiveSize
est inférieur à 0.
.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.
Remarques
Important
Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin*
et End*
) pour un nouveau développement. Utilisez plutôt les Task
équivalents basés sur .
Les protocoles orientés connexion peuvent utiliser la BeginAccept méthode pour commencer à accepter les tentatives de connexion entrantes. 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 implémente AsyncCallback à BeginAccept afin d’être informé de la fin de l’opération d’acceptation. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel peut être exécuté inline, pendant l’appel à BeginAccept. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult est définie true
sur pour indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de pour IAsyncResult obtenir l’objet d’état passé à la BeginAccept méthode .
L’opération BeginAccept doit être terminé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. Quand la Close méthode est appelée alors qu’une opération asynchrone est en cours, le rappel fourni à la BeginAccept méthode est appelé. Un appel suivant à 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.
Notes
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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.
Notes
Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunté 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, un instance spécifique Socket et un rappel spécifique), les utilisations suivantes de ce contexte voient une amélioration des performances.
Voir aussi
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones
S’applique à
BeginAccept(Int32, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Lance une opération asynchrone d'acceptation d'une tentative de connexion entrante et reçoit le premier bloc de données envoyé par l'application cliente.
public:
IAsyncResult ^ BeginAccept(int receiveSize, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (int receiveSize, AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (int receiveSize, AsyncCallback callback, object state);
member this.BeginAccept : int * AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (receiveSize As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- receiveSize
- Int32
Nombre d'octets à accepter de l'expéditeur.
- callback
- AsyncCallback
Délégué AsyncCallback.
- state
- Object
Objet qui contient les informations d’état de cette demande.
Retours
IAsyncResult qui fait référence à la création asynchrone de Socket.
Exceptions
L’objet Socket a été fermé.
Le socket acceptant n'écoute pas les connexions. Vous devez appeler Bind(EndPoint) et Listen(Int32) avant d'appeler BeginAccept(AsyncCallback, Object).
- ou -
Le socket accepté est lié.
receiveSize
est inférieur à 0.
.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.
Remarques
Important
Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin*
et End*
) pour un nouveau développement. Utilisez plutôt les Task
équivalents basés sur .
Les protocoles orientés connexion peuvent utiliser la BeginAccept méthode pour commencer à accepter les tentatives de connexion entrantes. 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 implémente AsyncCallback à BeginAccept afin d’être informé de la fin de l’opération d’acceptation. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel peut être exécuté inline, pendant l’appel à BeginAccept. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult est définie true
sur pour indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de pour IAsyncResult obtenir l’objet d’état passé à la BeginAccept méthode .
L’opération BeginAccept doit être terminé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. Quand la Close méthode est appelée alors qu’une opération asynchrone est en cours, le rappel fourni à la BeginAccept méthode est appelé. Un appel suivant à 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.
Notes
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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.
Notes
Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunté 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, un instance spécifique Socket et un rappel spécifique), les utilisations suivantes de ce contexte voient une amélioration des performances.
Voir aussi
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones
S’applique à
BeginAccept(Socket, Int32, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Lance une opération asynchrone d'acceptation d'une tentative de connexion entrante provenant d'un socket spécifié et reçoit le premier bloc de données envoyé par l'application cliente.
public:
IAsyncResult ^ BeginAccept(System::Net::Sockets::Socket ^ acceptSocket, int receiveSize, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (System.Net.Sockets.Socket? acceptSocket, int receiveSize, AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (System.Net.Sockets.Socket acceptSocket, int receiveSize, AsyncCallback callback, object state);
member this.BeginAccept : System.Net.Sockets.Socket * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (acceptSocket As Socket, receiveSize As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- receiveSize
- Int32
Nombre maximal d'octets à recevoir.
- callback
- AsyncCallback
Délégué AsyncCallback.
- state
- Object
Objet qui contient les informations d’état de cette demande.
Retours
Objet IAsyncResult qui fait référence à la création d'un objet Socket asynchrone.
Exceptions
L’objet Socket a été fermé.
Le socket acceptant n'écoute pas les connexions. Vous devez appeler Bind(EndPoint) et Listen(Int32) avant d'appeler BeginAccept(AsyncCallback, Object).
- ou -
Le socket accepté est lié.
receiveSize
est inférieur à 0.
.NET Framework et .NET 5 et versions antérieures uniquement : une erreur s’est produite lors de la tentative d’accès au socket.
Remarques
Important
Il s’agit d’une API de compatibilité. Nous vous déconseillons d’utiliser les méthodes APM (Begin*
et End*
) pour un nouveau développement. Utilisez plutôt les Task
équivalents basés sur .
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 retourné IAsyncResult , même si elle peut se terminer de manière 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 implémente AsyncCallback à BeginAccept afin d’être informé de la fin de l’opération d’acceptation. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel peut être exécuté inline, pendant l’appel à BeginAccept. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult est définie true
sur pour indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de pour IAsyncResult obtenir l’objet d’état passé à la BeginAccept méthode .
L’opération BeginAccept doit être terminé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. Quand la Close méthode est appelée alors qu’une opération asynchrone est en cours, le rappel fourni à la BeginAccept méthode est appelé. Un appel suivant à 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.
Notes
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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application. Pour plus d’informations, consultez Suivi réseau dans .NET Framework.
Notes
Le contexte d’exécution (le contexte de sécurité, l’utilisateur emprunté 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, un instance spécifique Socket et un rappel spécifique), les utilisations suivantes de ce contexte voient une amélioration des performances.
Voir aussi
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones