Socket.EndReceiveMessageFrom 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.
Met fin à une lecture asynchrone en attente à partir d’un point de terminaison spécifique. Cette méthode révèle également plus d’informations sur le paquet que EndReceiveFrom(IAsyncResult, EndPoint).
public:
int EndReceiveMessageFrom(IAsyncResult ^ asyncResult, System::Net::Sockets::SocketFlags % socketFlags, System::Net::EndPoint ^ % endPoint, [Runtime::InteropServices::Out] System::Net::Sockets::IPPacketInformation % ipPacketInformation);
public int EndReceiveMessageFrom(IAsyncResult asyncResult, ref System.Net.Sockets.SocketFlags socketFlags, ref System.Net.EndPoint endPoint, out System.Net.Sockets.IPPacketInformation ipPacketInformation);
member this.EndReceiveMessageFrom : IAsyncResult * SocketFlags * EndPoint * IPPacketInformation -> int
Public Function EndReceiveMessageFrom (asyncResult As IAsyncResult, ByRef socketFlags As SocketFlags, ByRef endPoint As EndPoint, ByRef ipPacketInformation As IPPacketInformation) As Integer
Paramètres
- asyncResult
- IAsyncResult
Qui IAsyncResult stocke les informations d’état et toutes les données définies par l’utilisateur pour cette opération asynchrone.
- socketFlags
- SocketFlags
Combinaison au niveau du bit des SocketFlags valeurs du paquet reçu.
- ipPacketInformation
- IPPacketInformation
Interface IPAddress et du paquet reçu.
Retours
En cas de réussite, nombre d’octets reçus. En cas d’échec, retourne 0.
Exceptions
asyncResult n’a pas été retourné par un appel à la BeginReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) méthode.
EndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation) a été précédemment appelé pour la lecture asynchrone.
Une erreur s’est produite lors de la tentative d’accès au socket.
- ou -
.NET 7+ uniquement : le Socket fichier a été fermé.
.NET Framework, .NET Core et .NET 5-6 uniquement : le Socket fichier a é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. Utilisez plutôt les Taskéquivalents basés sur les valeurs.
EndReceiveFrom termine l’opération démarrée par BeginReceiveFrom. Vous devez passer la IAsyncResult création par l’appel correspondant BeginReceiveFrom . EndReceiveFrom bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Examinez ipPacketInformation si vous devez savoir si le datagramme a été envoyé à l’aide d’une monodiffusion, d’une multidiffusion ou d’une adresse de diffusion.
Note
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.