Partager via


Socket.EndSendTo(IAsyncResult) Méthode

Définition

Met fin à un envoi asynchrone en attente vers un emplacement spécifique.

public:
 int EndSendTo(IAsyncResult ^ asyncResult);
public int EndSendTo (IAsyncResult asyncResult);
member this.EndSendTo : IAsyncResult -> int
Public Function EndSendTo (asyncResult As IAsyncResult) As Integer

Paramètres

asyncResult
IAsyncResult

IAsyncResult qui stocke des informations d'état et toutes les données définies par l'utilisateur pour cette opération asynchrone.

Retours

En cas de réussite, nombre d'octets envoyés ; sinon, erreur de Socket non valide.

Exceptions

asyncResult a la valeur null.

asyncResult n'a pas été retourné par un appel à la méthode BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object).

EndSendTo(IAsyncResult) a été précédemment appelé pour l'envoi asynchrone.

Une erreur s’est produite pendant la tentative d’accès au socket.

- ou -

.NET 7+ uniquement : a Socket été fermé.

.NET Framework, .NET Core et .NET 5-6 uniquement : a Socket été fermé.

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. Au lieu de cela, utilisez les Taskéquivalents basés sur la base.

EndSendTo termine l’opération démarrée par BeginSendTo. Vous devez passer le IAsyncResult créé par l’appel correspondant BeginSendTo .

Si vous utilisez un protocole sans connexion, EndSendTo bloque jusqu’à ce que le datagramme soit envoyé. Si vous utilisez un protocole orienté connexion, EndSendTo bloque jusqu’à ce que le nombre d’octets demandé soit envoyé. Il n’est pas garanti que les données que vous envoyez s’affichent immédiatement sur le réseau. Pour augmenter l’efficacité du réseau, le système sous-jacent peut retarder la transmission jusqu’à ce qu’une quantité significative de données sortantes soit collectée. Une exécution réussie de la BeginSendTo méthode signifie que le système sous-jacent a eu de la place pour mettre en mémoire tampon vos données pour un envoi réseau.

Notes

Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique. Une fois ce code obtenu, reportez-vous à la documentation du code d’erreur de l’API Windows Sockets version 2 pour obtenir une description détaillée de l’erreur.

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.

S’applique à