Socket.BeginReceive 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.
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket.
Surcharges
| Nom | Description |
|---|---|
| BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) |
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket. |
| BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object) |
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket. |
| BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object) |
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket. |
| BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object) |
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket. |
BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket.
public:
IAsyncResult ^ BeginReceive(cli::array <System::Byte> ^ buffer, int offset, int size, System::Net::Sockets::SocketFlags socketFlags, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback callback, object state);
member this.BeginReceive : byte[] * int * int * System.Net.Sockets.SocketFlags * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffer As Byte(), offset As Integer, size As Integer, socketFlags As SocketFlags, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- offset
- Int32
Position de base zéro dans le buffer paramètre auquel stocker les données reçues.
- size
- Int32
Nombre d’octets à recevoir.
- socketFlags
- SocketFlags
Combinaison au niveau du bit des SocketFlags valeurs.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler une fois l’opération terminée.
- state
- Object
Objet défini par l’utilisateur qui contient des informations sur l’opération de réception. Cet objet est transmis au EndReceive(IAsyncResult) délégué une fois l’opération terminée.
Retours
Qui IAsyncResult fait référence à la lecture asynchrone.
Exceptions
buffer 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.
Socket a été fermé.
offset est inférieur à 0.
- ou -
offset est supérieur à la longueur de buffer.
- ou -
size est inférieur à 0.
- ou -
size est supérieur à la longueur de buffer moins la valeur du offset paramètre.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive pour être informé de l’achèvement de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel est exécuté en ligne, pendant l’appel à BeginReceive. 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 BeginReceive méthode.
L’opération asynchrone BeginReceive doit être effectuée en appelant la EndReceive méthode. En règle générale, la méthode est appelée par le AsyncCallback délégué. EndReceive bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Fermez l’option Socket pour annuler un objet en attente BeginReceive. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginReceive méthode est appelé. Un appel ultérieur à la EndReceive 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
Toutes les E/S lancées par un thread donné sont annulées lorsque ce thread se termine. Une opération asynchrone en attente peut échouer si le thread se termine avant la fin de l’opération.
Note
state est une instanciation d’une classe définie par l’utilisateur.
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
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling a Delegate as a Callback Method
- Exemple de socket client asynchrone
- Exemple de socket de serveur asynchrone
S’applique à
BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket.
public:
IAsyncResult ^ BeginReceive(cli::array <System::Byte> ^ buffer, int offset, int size, System::Net::Sockets::SocketFlags socketFlags, [Runtime::InteropServices::Out] System::Net::Sockets::SocketError % errorCode, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult? BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback callback, object state);
member this.BeginReceive : byte[] * int * int * System.Net.Sockets.SocketFlags * SocketError * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffer As Byte(), offset As Integer, size As Integer, socketFlags As SocketFlags, ByRef errorCode As SocketError, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- offset
- Int32
Emplacement dans buffer lequel stocker les données reçues.
- size
- Int32
Nombre d’octets à recevoir.
- socketFlags
- SocketFlags
Combinaison au niveau du bit des SocketFlags valeurs.
- errorCode
- SocketError
Objet SocketError qui stocke l’erreur de socket.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler une fois l’opération terminée.
- state
- Object
Objet défini par l’utilisateur qui contient des informations sur l’opération de réception. Cet objet est transmis au EndReceive(IAsyncResult) délégué une fois l’opération terminée.
Retours
Qui IAsyncResult fait référence à la lecture asynchrone.
Exceptions
buffer 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.
Socket a été fermé.
offset est inférieur à 0.
- ou -
offset est supérieur à la longueur de buffer.
- ou -
size est inférieur à 0.
- ou -
size est supérieur à la longueur de buffer moins la valeur du offset paramètre.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive pour être informé de l’achèvement de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel est exécuté en ligne, pendant l’appel à BeginReceive. 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 BeginReceive méthode.
L’opération asynchrone BeginReceive doit être effectuée en appelant la EndReceive méthode. En règle générale, la méthode est appelée par le AsyncCallback délégué. EndReceive bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Fermez l’option Socket pour annuler un objet en attente BeginReceive. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginReceive méthode est appelé. Un appel ultérieur à la EndReceive 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
Toutes les E/S lancées par un thread donné sont annulées lorsque ce thread se termine. Une opération asynchrone en attente peut échouer si le thread se termine avant la fin de l’opération.
Note
state est une instanciation d’une classe définie par l’utilisateur.
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
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling a Delegate as a Callback Method
- Exemple de socket client asynchrone
- Exemple de socket de serveur asynchrone
S’applique à
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket.
public:
IAsyncResult ^ BeginReceive(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ buffers, System::Net::Sockets::SocketFlags socketFlags, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback callback, object state);
member this.BeginReceive : System.Collections.Generic.IList<ArraySegment<byte>> * System.Net.Sockets.SocketFlags * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffers As IList(Of ArraySegment(Of Byte)), socketFlags As SocketFlags, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- buffers
- IList<ArraySegment<Byte>>
Tableau de type Byte qui correspond à l’emplacement de stockage des données reçues.
- socketFlags
- SocketFlags
Combinaison au niveau du bit des SocketFlags valeurs.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler une fois l’opération terminée.
- state
- Object
Objet défini par l’utilisateur qui contient des informations sur l’opération de réception. Cet objet est transmis au EndReceive(IAsyncResult) délégué une fois l’opération terminée.
Retours
Qui IAsyncResult fait référence à la lecture asynchrone.
Exceptions
buffers 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.
Socket 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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive pour être informé de l’achèvement de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel est exécuté en ligne, pendant l’appel à BeginReceive. 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 BeginReceive méthode.
L’opération asynchrone BeginReceive doit être effectuée en appelant la EndReceive méthode. En règle générale, la méthode est appelée par le AsyncCallback délégué. EndReceive bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Fermez l’option Socket pour annuler un objet en attente BeginReceive. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginReceive méthode est appelé. Un appel ultérieur à la EndReceive 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
Toutes les E/S lancées par un thread donné sont annulées lorsque ce thread se termine. Une opération asynchrone en attente peut échouer si le thread se termine avant la fin de l’opération.
Note
state est une instanciation d’une classe définie par l’utilisateur.
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
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling a Delegate as a Callback Method
- Exemple de socket client asynchrone
- Exemple de socket de serveur asynchrone
S’applique à
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Commence à recevoir de manière asynchrone des données à partir d’un objet connecté Socket.
public:
IAsyncResult ^ BeginReceive(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ buffers, System::Net::Sockets::SocketFlags socketFlags, [Runtime::InteropServices::Out] System::Net::Sockets::SocketError % errorCode, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult? BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback callback, object state);
member this.BeginReceive : System.Collections.Generic.IList<ArraySegment<byte>> * System.Net.Sockets.SocketFlags * SocketError * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffers As IList(Of ArraySegment(Of Byte)), socketFlags As SocketFlags, ByRef errorCode As SocketError, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- buffers
- IList<ArraySegment<Byte>>
Tableau de type Byte qui correspond à l’emplacement de stockage des données reçues.
- socketFlags
- SocketFlags
Combinaison au niveau du bit des SocketFlags valeurs.
- errorCode
- SocketError
Objet SocketError qui stocke l’erreur de socket.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler une fois l’opération terminée.
- state
- Object
Objet défini par l’utilisateur qui contient des informations sur l’opération de réception. Cet objet est transmis au EndReceive(IAsyncResult) délégué une fois l’opération terminée.
Retours
Qui IAsyncResult fait référence à la lecture asynchrone.
Exceptions
buffers 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.
Socket 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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive pour être informé de l’achèvement de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de façon synchrone, le rappel est exécuté en ligne, pendant l’appel à BeginReceive. 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 BeginReceive méthode.
L’opération asynchrone BeginReceive doit être effectuée en appelant la EndReceive méthode. En règle générale, la méthode est appelée par le AsyncCallback délégué. EndReceive bloque le thread appelant jusqu’à ce que l’opération soit terminée.
Fermez l’option Socket pour annuler un objet en attente BeginReceive. Lorsque la Close méthode est appelée pendant qu’une opération asynchrone est en cours, le rappel fourni à la BeginReceive méthode est appelé. Un appel ultérieur à la EndReceive 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
Toutes les E/S lancées par un thread donné sont annulées lorsque ce thread se termine. Une opération asynchrone en attente peut échouer si le thread se termine avant la fin de l’opération.
Note
state est une instanciation d’une classe définie par l’utilisateur.
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
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling a Delegate as a Callback Method
- Exemple de socket client asynchrone
- Exemple de socket de serveur asynchrone