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.
Démarre la réception asynchrone de données à partir d'un Socket connecté.
Surcharges
BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object) |
Démarre la réception asynchrone de données à partir d'un Socket connecté. |
BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) |
Démarre la réception asynchrone de données à partir d'un Socket connecté. |
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object) |
Démarre la réception asynchrone de données à partir d'un Socket connecté. |
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object) |
Démarre la réception asynchrone de données à partir d'un Socket connecté. |
BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Démarre la réception asynchrone de données à partir d'un Socket connecté.
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
où stocker les données reçues.
- size
- Int32
Nombre d'octets à recevoir.
- socketFlags
- SocketFlags
Combinaison d’opérations de bits des valeurs SocketFlags.
- 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 quand l'opération est terminée.
- state
- Object
Objet défini par l'utilisateur qui comporte des informations sur l'opération de réception. Cet objet est passé au délégué EndReceive(IAsyncResult) quand l'opération est terminée.
Retours
IAsyncResult qui 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 paramètre offset
.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive à afin d’être informé de la fin de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel sera exécuté en ligne, pendant l’appel à BeginReceive. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult sera définie sur pour true
indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de IAsyncResult pour obtenir l’objet d’état passé à la BeginReceive méthode .
L’opération asynchrone BeginReceive doit être terminé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 le Socket pour annuler un en attente BeginReceive. Quand 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 suivant à 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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Toutes les E/S initiées par un thread donné sont annulées à la sortie de ce thread. Une opération asynchrone en attente peut échouer si le thread se ferme avant la fin de l’opération.
Notes
state
est une instanciation d’une classe définie par l’utilisateur.
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 usurpé 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 ultérieures de ce contexte voient une amélioration des performances.
Voir aussi
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling d'un délégué comme méthode de rappel
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones
S’applique à
BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Démarre la réception asynchrone de données à partir d'un Socket connecté.
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 paramètre buffer
à laquelle stocker les données reçues.
- size
- Int32
Nombre d'octets à recevoir.
- socketFlags
- SocketFlags
Combinaison d’opérations de bits des valeurs SocketFlags.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler quand l'opération est terminée.
- state
- Object
Objet défini par l'utilisateur qui comporte des informations sur l'opération de réception. Cet objet est passé au délégué EndReceive(IAsyncResult) quand l'opération est terminée.
Retours
IAsyncResult qui 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 paramètre offset
.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive à afin d’être informé de la fin de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel sera exécuté en ligne, pendant l’appel à BeginReceive. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult sera définie sur pour true
indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de IAsyncResult pour obtenir l’objet d’état passé à la BeginReceive méthode .
L’opération asynchrone BeginReceive doit être terminé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 le Socket pour annuler un en attente BeginReceive. Quand 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 suivant à 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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Toutes les E/S initiées par un thread donné sont annulées à la sortie de ce thread. Une opération asynchrone en attente peut échouer si le thread se ferme avant la fin de l’opération.
Notes
state
est une instanciation d’une classe définie par l’utilisateur.
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 usurpé 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 ultérieures de ce contexte voient une amélioration des performances.
Voir aussi
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling d'un délégué comme méthode de rappel
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones
S’applique à
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Démarre la réception asynchrone de données à partir d'un Socket connecté.
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 est l'emplacement de stockage pour les données reçues.
- socketFlags
- SocketFlags
Combinaison d’opérations de bits des valeurs SocketFlags.
- callback
- AsyncCallback
Délégué AsyncCallback qui fait référence à la méthode à appeler quand l'opération est terminée.
- state
- Object
Objet défini par l'utilisateur qui comporte des informations sur l'opération de réception. Cet objet est passé au délégué EndReceive(IAsyncResult) quand l'opération est terminée.
Retours
IAsyncResult qui 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é.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive à afin d’être informé de la fin de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel sera exécuté en ligne, pendant l’appel à BeginReceive. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult sera définie sur pour true
indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de IAsyncResult pour obtenir l’objet d’état passé à la BeginReceive méthode .
L’opération asynchrone BeginReceive doit être terminé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 le Socket pour annuler un en attente BeginReceive. Quand 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 suivant à 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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Toutes les E/S initiées par un thread donné sont annulées à la sortie de ce thread. Une opération asynchrone en attente peut échouer si le thread se ferme avant la fin de l’opération.
Notes
state
est une instanciation d’une classe définie par l’utilisateur.
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 usurpé 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 ultérieures de ce contexte voient une amélioration des performances.
Voir aussi
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling d'un délégué comme méthode de rappel
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones
S’applique à
BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
Démarre la réception asynchrone de données à partir d'un Socket connecté.
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 est l'emplacement de stockage pour les données reçues.
- socketFlags
- SocketFlags
Combinaison d’opérations de bits des valeurs SocketFlags.
- 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 quand l'opération est terminée.
- state
- Object
Objet défini par l'utilisateur qui comporte des informations sur l'opération de réception. Cet objet est passé au délégué EndReceive(IAsyncResult) quand l'opération est terminée.
Retours
IAsyncResult qui 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é.
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.
Vous pouvez passer un rappel qui s’implémente AsyncCallbackBeginReceive à afin d’être informé de la fin de l’opération. Notez que si la pile réseau sous-jacente termine l’opération de manière synchrone, le rappel sera exécuté en ligne, pendant l’appel à BeginReceive. Dans ce cas, la CompletedSynchronously propriété sur le retourné IAsyncResult sera définie sur pour true
indiquer que la méthode s’est terminée de manière synchrone. Utilisez la AsyncState propriété de IAsyncResult pour obtenir l’objet d’état passé à la BeginReceive méthode .
L’opération asynchrone BeginReceive doit être terminé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 le Socket pour annuler un en attente BeginReceive. Quand 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 suivant à 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.
Notes
Si vous recevez un SocketException, utilisez la SocketException.ErrorCode propriété pour obtenir le code d’erreur spécifique.
Notes
Toutes les E/S initiées par un thread donné sont annulées à la sortie de ce thread. Une opération asynchrone en attente peut échouer si le thread se ferme avant la fin de l’opération.
Notes
state
est une instanciation d’une classe définie par l’utilisateur.
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 usurpé 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 ultérieures de ce contexte voient une amélioration des performances.
Voir aussi
- EndAccept(IAsyncResult)
- AsyncCallback
- Connect(EndPoint)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Marshaling d'un délégué comme méthode de rappel
- Exemple de socket client asynchrone
- Exemple de sockets serveur asynchrones