Socket.ReceiveFromAsync Méthode

Définition

Surcharges

ReceiveFromAsync(SocketAsyncEventArgs)

Démarre la réception asynchrone de données à partir d'un périphérique réseau spécifié.

ReceiveFromAsync(ArraySegment<Byte>, EndPoint)

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

ReceiveFromAsync(ArraySegment<Byte>, SocketFlags, EndPoint)

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

ReceiveFromAsync(Memory<Byte>, EndPoint, CancellationToken)

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

ReceiveFromAsync(Memory<Byte>, SocketFlags, EndPoint, CancellationToken)

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

ReceiveFromAsync(Memory<Byte>, SocketFlags, SocketAddress, CancellationToken)

Reçoit un datagramme dans la mémoire tampon de données à l'aide du SocketFlags spécifié et stocke le point de terminaison.

ReceiveFromAsync(SocketAsyncEventArgs)

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

Démarre la réception asynchrone de données à partir d'un périphérique réseau spécifié.

public:
 bool ReceiveFromAsync(System::Net::Sockets::SocketAsyncEventArgs ^ e);
public bool ReceiveFromAsync (System.Net.Sockets.SocketAsyncEventArgs e);
member this.ReceiveFromAsync : System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Function ReceiveFromAsync (e As SocketAsyncEventArgs) As Boolean

Paramètres

e
SocketAsyncEventArgs

Objet SocketAsyncEventArgs à utiliser pour cette opération de socket asynchrone.

Retours

true si l’opération d’E/S est en attente. L'événement Completed sur le paramètre e sera déclenché une fois l'opération terminée.

false si l’opération d’E/S a été terminée de manière synchrone. Dans ce cas, l'événement Completed sur le paramètre e ne sera pas déclenché et l'objet e transmis en tant que paramètre peut être examiné immédiatement après que l'appel de méthode a été retourné pour extraire le résultat de l'opération.

Exceptions

RemoteEndPoint ne peut pas être Null.

Une opération de socket utilisant l'objet SocketAsyncEventArgs spécifié dans le paramètre e spécifié était déjà en cours.

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

Remarques

La ReceiveFromAsync méthode est principalement utilisée pour recevoir des données sur un socket sans connexion. L’adresse locale du socket doit être connue.

L’appelant doit définir la SocketAsyncEventArgs.RemoteEndPoint propriété sur un EndPoint du même type que le point de terminaison de l’hôte distant. La propriété sera mise à jour en cas de réception réussie vers le point de terminaison distant réel.

La SocketAsyncEventArgs.SocketFlags propriété sur le e paramètre fournit au fournisseur de services Windows Sockets des informations supplémentaires sur la demande de lecture. Pour plus d’informations sur l’utilisation de ce paramètre, consultez System.Net.Sockets.SocketFlags.

Les propriétés et événements suivants sur l’objet System.Net.Sockets.SocketAsyncEventArgs sont nécessaires pour appeler correctement cette méthode :

L’appelant peut définir la SocketAsyncEventArgs.UserToken propriété sur n’importe quel objet d’état utilisateur souhaité avant d’appeler la ReceiveFromAsync méthode, afin que les informations soient récupérables dans la méthode de rappel. Si le rappel a besoin de plus d’informations qu’un seul objet, une petite classe peut être créée pour contenir les autres informations d’état requises en tant que membres.

Pour les sockets orientés messages, un message entrant est placé dans la mémoire tampon jusqu’à la taille totale de la mémoire tampon. Les SocketAsyncEventArgs.Count propriétés et SocketAsyncEventArgs.Offset déterminent où les données sont placées dans la mémoire tampon et la quantité de données.

Pour les sockets de type flux d’octets, les données entrantes sont placées dans la mémoire tampon jusqu’à ce que la mémoire tampon soit remplie, que la connexion soit fermée ou que les données mises en mémoire tampon en interne sont épuisées. Les SocketAsyncEventArgs.Count propriétés et SocketAsyncEventArgs.Offset déterminent où les données sont placées dans la mémoire tampon et la quantité de données.

Voir aussi

S’applique à

ReceiveFromAsync(ArraySegment<Byte>, EndPoint)

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

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::SocketReceiveFromResult> ^ ReceiveFromAsync(ArraySegment<System::Byte> buffer, System::Net::EndPoint ^ remoteEndPoint);
public System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync (ArraySegment<byte> buffer, System.Net.EndPoint remoteEndPoint);
member this.ReceiveFromAsync : ArraySegment<byte> * System.Net.EndPoint -> System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As ArraySegment(Of Byte), remoteEndPoint As EndPoint) As Task(Of SocketReceiveFromResult)

Paramètres

buffer
ArraySegment<Byte>

Mémoire tampon pour les données reçues.

remoteEndPoint
EndPoint

Point de terminaison du même type que le point de terminaison de l’hôte distant.

Retours

Tâche asynchrone qui se termine avec un SocketReceiveFromResult contenant le nombre d’octets reçus et le point de terminaison de l’hôte d’envoi.

Exceptions

remoteEndPoint a la valeur null.

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

Un appelant de la pile des appels ne dispose pas des autorisations requises.

S’applique à

ReceiveFromAsync(ArraySegment<Byte>, SocketFlags, EndPoint)

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

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::SocketReceiveFromResult> ^ ReceiveFromAsync(ArraySegment<System::Byte> buffer, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEndPoint);
public System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync (ArraySegment<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEndPoint);
member this.ReceiveFromAsync : ArraySegment<byte> * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As ArraySegment(Of Byte), socketFlags As SocketFlags, remoteEndPoint As EndPoint) As Task(Of SocketReceiveFromResult)

Paramètres

buffer
ArraySegment<Byte>

Mémoire tampon pour les données reçues.

socketFlags
SocketFlags

Combinaison de bits de valeurs SocketFlags qui seront utilisées lors de la réception des données.

remoteEndPoint
EndPoint

Point de terminaison du même type que le point de terminaison de l’hôte distant.

Retours

Tâche asynchrone qui se termine avec un SocketReceiveFromResult contenant le nombre d’octets reçus et le point de terminaison de l’hôte d’envoi.

Exceptions

remoteEndPoint a la valeur null.

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

Un appelant de la pile des appels ne dispose pas des autorisations requises.

S’applique à

ReceiveFromAsync(Memory<Byte>, EndPoint, CancellationToken)

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

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

public System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync (Memory<byte> buffer, System.Net.EndPoint remoteEndPoint, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.EndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), remoteEndPoint As EndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of SocketReceiveFromResult)

Paramètres

buffer
Memory<Byte>

Mémoire tampon pour les données reçues.

remoteEndPoint
EndPoint

Point de terminaison du même type que le point de terminaison de l’hôte distant.

cancellationToken
CancellationToken

Jeton d’annulation qui peut être utilisé pour signaler que l’opération asynchrone doit être annulée.

Retours

Tâche asynchrone qui se termine avec un SocketReceiveFromResult contenant le nombre d’octets reçus et le point de terminaison de l’hôte d’envoi.

Exceptions

remoteEndPoint a la valeur null.

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

Un appelant de la pile des appels ne dispose pas des autorisations requises.

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à

ReceiveFromAsync(Memory<Byte>, SocketFlags, EndPoint, CancellationToken)

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

Reçoit des données et retourne le point de terminaison de l’hôte d’envoi.

public System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync (Memory<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEndPoint, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.Sockets.SocketFlags * System.Net.EndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), socketFlags As SocketFlags, remoteEndPoint As EndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of SocketReceiveFromResult)

Paramètres

buffer
Memory<Byte>

Mémoire tampon pour les données reçues.

socketFlags
SocketFlags

Combinaison de bits de valeurs SocketFlags qui seront utilisées lors de la réception des données.

remoteEndPoint
EndPoint

Point de terminaison du même type que le point de terminaison de l’hôte distant.

cancellationToken
CancellationToken

Jeton d’annulation qui peut être utilisé pour signaler que l’opération asynchrone doit être annulée.

Retours

Tâche asynchrone qui se termine avec un SocketReceiveFromResult contenant le nombre d’octets reçus et le point de terminaison de l’hôte d’envoi.

Exceptions

remoteEndPoint a la valeur null.

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

Un appelant de la pile des appels ne dispose pas des autorisations requises.

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à

ReceiveFromAsync(Memory<Byte>, SocketFlags, SocketAddress, CancellationToken)

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

Reçoit un datagramme dans la mémoire tampon de données à l'aide du SocketFlags spécifié et stocke le point de terminaison.

public System.Threading.Tasks.ValueTask<int> ReceiveFromAsync (Memory<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.SocketAddress receivedAddress, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.Sockets.SocketFlags * System.Net.SocketAddress * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), socketFlags As SocketFlags, receivedAddress As SocketAddress, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Paramètres

buffer
Memory<Byte>

Mémoire tampon pour les données reçues.

socketFlags
SocketFlags

Combinaison de bits des SocketFlags valeurs qui seront utilisées lors de la réception des données.

receivedAddress
SocketAddress

Une SocketAddress instance qui est mise à jour avec la valeur de l’homologue distant lorsque cette méthode est retournée.

cancellationToken
CancellationToken

Jeton d’annulation qui peut être utilisé pour signaler que l’opération asynchrone doit être annulée.

Retours

Tâche asynchrone qui se termine avec un SocketReceiveFromResult contenant le nombre d’octets reçus et le point de terminaison de l’hôte d’envoi.

Exceptions

receivedAddress a la valeur null.

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

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

S’applique à