NetworkStream Classe
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.
Fournit le flux de données sous-jacent pour l’accès réseau.
public ref class NetworkStream : System::IO::Stream
public class NetworkStream : System.IO.Stream
type NetworkStream = class
inherit Stream
type NetworkStream = class
inherit Stream
interface IDisposable
Public Class NetworkStream
Inherits Stream
- Héritage
- Héritage
- Implémente
Remarques
La NetworkStream classe fournit des méthodes pour l’envoi et la réception de données sur Stream des sockets en mode bloquant. Pour plus d’informations sur le blocage et les non-blocages Socket, consultez Utilisation d’un socket client asynchrone. Vous pouvez utiliser la classe pour le NetworkStream transfert de données synchrone et asynchrone. Pour plus d’informations sur la communication synchrone et asynchrone, consultez Sockets.
Pour créer un NetworkStream, vous devez fournir une connexion Socket. Vous pouvez également spécifier FileAccess l’autorisation NetworkStream fournie par le biais de l’autorisation fournie Socket. Par défaut, la fermeture du fichier NetworkStream ne ferme pas le fichier fourni Socket. Si vous souhaitez que l’autorisation NetworkStream de fermer le paramètre fourni Socketsoit fermée, vous devez spécifier true la valeur du ownsSocket paramètre.
Utilisez les méthodes et Read les Write méthodes pour les E/S de blocage synchrones à thread unique simple. Si vous souhaitez traiter votre E/S de manière asynchrone, envisagez d’utiliser les Task méthodes ou ValueTaskles méthodes basées sur des données ReadAsync et WriteAsync.
Il NetworkStream ne prend pas en charge l’accès aléatoire au flux de données réseau. La valeur de la CanSeek propriété, qui indique si le flux prend en charge la recherche, est toujours false; la lecture de la Position propriété, la lecture de la Length propriété ou l’appel de la Seek méthode lève un NotSupportedException.
Les opérations de lecture et d’écriture peuvent être effectuées simultanément sur une instance de la NetworkStream classe sans avoir besoin de synchronisation. Tant qu’il existe un thread unique pour les opérations d’écriture et un thread unique pour les opérations de lecture, il n’y aura pas d’interférence croisée entre les threads de lecture et d’écriture et aucune synchronisation n’est requise.
Constructeurs
| Nom | Description |
|---|---|
| NetworkStream(Socket, Boolean) |
Initialise une nouvelle instance de la NetworkStream classe pour la propriété spécifiée SocketSocket . |
| NetworkStream(Socket, FileAccess, Boolean) |
Crée une instance de la NetworkStream classe pour la classe spécifiée Socket avec les droits d’accès spécifiés et la propriété spécifiée Socket . |
| NetworkStream(Socket, FileAccess) |
Crée une instance de la NetworkStream classe pour la classe spécifiée Socket avec les droits d’accès spécifiés. |
| NetworkStream(Socket) |
Crée une instance de la NetworkStream classe pour le fichier spécifié Socket. |
Propriétés
| Nom | Description |
|---|---|
| CanRead |
Obtient une valeur qui indique si la NetworkStream lecture prend en charge la lecture. |
| CanSeek |
Obtient une valeur qui indique si le flux prend en charge la recherche. Cette propriété n’est actuellement pas prise en charge. Cette propriété retourne |
| CanTimeout |
Indique si les propriétés de délai d’attente sont utilisables pour NetworkStream. |
| CanWrite |
Obtient une valeur qui indique si la prise en charge de l’écriture NetworkStream est prise en charge. |
| DataAvailable |
Obtient une valeur qui indique si les données sont disponibles immédiatement en NetworkStream lecture. |
| Length |
Obtient la longueur des données disponibles sur le flux. Cette propriété n’est actuellement pas prise en charge et lève toujours un NotSupportedException. |
| Position |
Obtient ou définit la position actuelle dans le flux. Cette propriété n’est actuellement pas prise en charge et lève toujours un NotSupportedException. |
| Readable |
Obtient ou définit une valeur qui indique si la NetworkStream valeur peut être lue. |
| ReadTimeout |
Obtient ou définit la durée pendant laquelle une opération de lecture bloque l’attente des données. |
| Socket |
Obtient le sous-jacent Socket. |
| Writeable |
Obtient une valeur qui indique si l’écriture NetworkStream est accessible en écriture. |
| WriteTimeout |
Obtient ou définit la durée pendant laquelle une opération d’écriture bloque l’attente des données. |
Méthodes
| Nom | Description |
|---|---|
| BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
Commence une lecture asynchrone à partir du NetworkStream. |
| BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
Commence une écriture asynchrone dans un flux. |
| Close() |
Ferme le NetworkStream. |
| Close() |
Ferme le flux actuel et libère toutes les ressources (telles que les sockets et les handles de fichiers) associées au flux actuel. Au lieu d’appeler cette méthode, vérifiez que le flux est correctement supprimé. (Hérité de Stream) |
| Close(Int32) |
Ferme l’après NetworkStream attente de l’heure spécifiée pour autoriser l’envoi des données. |
| Close(TimeSpan) |
Ferme l’après NetworkStream attente de la durée spécifiée pour permettre l’envoi des données. |
| CopyTo(Stream, Int32) |
Lit les octets du flux actuel et les écrit dans un autre flux à l’aide d’une taille de mémoire tampon spécifiée. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CopyTo(Stream) |
Lit les octets du flux actuel et les écrit dans un autre flux. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CopyToAsync(Stream, CancellationToken) |
Lit de manière asynchrone les octets du flux actuel et les écrit dans un autre flux à l’aide d’un jeton d’annulation spécifié. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CopyToAsync(Stream, Int32, CancellationToken) |
Lit de manière asynchrone les octets du flux actuel et les écrit dans un autre flux à l’aide d’une taille de mémoire tampon et d’un jeton d’annulation spécifiés. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CopyToAsync(Stream, Int32) |
Lit de façon asynchrone les octets du flux actuel et les écrit dans un autre flux à l’aide d’une taille de mémoire tampon spécifiée. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CopyToAsync(Stream) |
Lit de manière asynchrone les octets du flux actuel et les écrit dans un autre flux. Les deux positions de flux sont avancées par le nombre d’octets copiés. (Hérité de Stream) |
| CreateObjRef(Type) |
Crée un objet qui contient toutes les informations pertinentes requises pour générer un proxy utilisé pour communiquer avec un objet distant. (Hérité de MarshalByRefObject) |
| CreateWaitHandle() |
Obsolète.
Obsolète.
Obsolète.
Alloue un WaitHandle objet. (Hérité de Stream) |
| Dispose() |
Libère toutes les ressources utilisées par le Stream. (Hérité de Stream) |
| Dispose(Boolean) |
Libère les ressources non managées utilisées par les NetworkStream ressources gérées et libère éventuellement les ressources managées. |
| DisposeAsync() |
Libère de façon asynchrone les ressources non managées utilisées par le Stream. (Hérité de Stream) |
| EndRead(IAsyncResult) |
Gère la fin d’une lecture asynchrone. |
| EndWrite(IAsyncResult) |
Gère la fin d’une écriture asynchrone. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| Finalize() |
Libère toutes les ressources utilisées par le NetworkStream. |
| Flush() |
Vide les données du flux. Cette méthode est réservée pour une utilisation ultérieure. |
| FlushAsync() |
Efface de façon asynchrone toutes les mémoires tampons de ce flux et entraîne l’écriture de toutes les données mises en mémoire tampon sur l’appareil sous-jacent. (Hérité de Stream) |
| FlushAsync(CancellationToken) |
Vide les données du flux en tant qu’opération asynchrone. |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetLifetimeService() |
Obsolète.
Récupère l’objet de service de durée de vie actuel qui contrôle la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| InitializeLifetimeService() |
Obsolète.
Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| MemberwiseClone(Boolean) |
Crée une copie superficielle de l’objet actuel MarshalByRefObject . (Hérité de MarshalByRefObject) |
| ObjectInvariant() |
Obsolète.
Fournit la prise en charge d’un Contract. (Hérité de Stream) |
| Read(Byte[], Int32, Int32) |
Lit les données du NetworkStream tableau d’octets et les stocke dans un tableau d’octets. |
| Read(Span<Byte>) |
Lit les données à partir des données NetworkStream et les stocke dans une étendue d’octets en mémoire. |
| Read(Span<Byte>) |
En cas de substitution dans une classe dérivée, lit une séquence d’octets à partir du flux actuel et avance la position dans le flux par le nombre d’octets lus. (Hérité de Stream) |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Lit les données à partir des données NetworkStream et les stocke dans une plage spécifiée d’un tableau d’octets en tant qu’opération asynchrone. |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Lit de façon asynchrone une séquence d’octets à partir du flux actuel, avance la position dans le flux en fonction du nombre d’octets lus et surveille les demandes d’annulation. (Hérité de Stream) |
| ReadAsync(Byte[], Int32, Int32) |
Lit de façon asynchrone une séquence d’octets à partir du flux actuel et avance la position dans le flux en fonction du nombre d’octets lus. (Hérité de Stream) |
| ReadAsync(Memory<Byte>, CancellationToken) |
Lit les données à partir de la NetworkStream plage de mémoire d’octets et les stocke dans une plage de mémoire d’octets en tant qu’opération asynchrone. |
| ReadAsync(Memory<Byte>, CancellationToken) |
Lit de façon asynchrone une séquence d’octets à partir du flux actuel, avance la position dans le flux en fonction du nombre d’octets lus et surveille les demandes d’annulation. (Hérité de Stream) |
| ReadAtLeast(Span<Byte>, Int32, Boolean) |
Lit au moins un nombre minimal d’octets du flux actuel et avance la position dans le flux par le nombre d’octets lus. (Hérité de Stream) |
| ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken) |
Lit de façon asynchrone au moins un nombre minimal d’octets à partir du flux actuel, avance la position dans le flux par le nombre d’octets lus et surveille les demandes d’annulation. (Hérité de Stream) |
| ReadByte() |
Lit un octet à partir du NetworkStream flux et avance la position dans le flux d’un octet ou retourne -1 si à la fin du flux. |
| ReadByte() |
Lit un octet à partir du flux et avance la position dans le flux d’un octet, ou retourne -1 si à la fin du flux. (Hérité de Stream) |
| ReadExactly(Byte[], Int32, Int32) |
Lit le nombre d’octets |
| ReadExactly(Span<Byte>) |
Lit les octets du flux actuel et avance la position dans le flux jusqu’à ce que le |
| ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
Lit de façon asynchrone le nombre d’octets |
| ReadExactlyAsync(Memory<Byte>, CancellationToken) |
Lit de façon asynchrone les octets du flux actuel, avance la position dans le flux jusqu’à ce que le |
| Seek(Int64, SeekOrigin) |
Définit la position actuelle du flux sur la valeur donnée. Cette méthode n’est actuellement pas prise en charge et lève toujours un NotSupportedException. |
| SetLength(Int64) |
Définit la longueur du flux. Cette méthode lève toujours un NotSupportedException. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| Write(Byte[], Int32, Int32) |
Écrit des données dans la NetworkStream plage spécifiée d’un tableau d’octets. |
| Write(ReadOnlySpan<Byte>) |
Écrit des données à NetworkStream partir d’une étendue d’octets en lecture seule. |
| Write(ReadOnlySpan<Byte>) |
En cas de substitution dans une classe dérivée, écrit une séquence d’octets dans le flux actuel et avance la position actuelle dans ce flux par le nombre d’octets écrits. (Hérité de Stream) |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Écrit des données dans la NetworkStream plage spécifiée d’un tableau d’octets en tant qu’opération asynchrone. |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Écrit de façon asynchrone une séquence d’octets dans le flux actuel, avance la position actuelle dans ce flux par le nombre d’octets écrits et surveille les demandes d’annulation. (Hérité de Stream) |
| WriteAsync(Byte[], Int32, Int32) |
Écrit de façon asynchrone une séquence d’octets dans le flux actuel et avance la position actuelle dans ce flux par le nombre d’octets écrits. (Hérité de Stream) |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Écrit des données dans la NetworkStream plage de mémoire en lecture seule en tant qu’opération asynchrone. |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Écrit de façon asynchrone une séquence d’octets dans le flux actuel, avance la position actuelle dans ce flux par le nombre d’octets écrits et surveille les demandes d’annulation. (Hérité de Stream) |
| WriteByte(Byte) |
Écrit un octet à la position actuelle dans le NetworkStream flux et avance la position dans le flux d’un octet. |
| WriteByte(Byte) |
Écrit un octet à la position actuelle dans le flux et avance la position dans le flux d’un octet. (Hérité de Stream) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IDisposable.Dispose() |
Cette API prend en charge l'infrastructure du produit et n'est pas destinée à être utilisée directement à partir de votre code. Libère toutes les ressources utilisées par le NetworkStream. |
Méthodes d’extension
| Nom | Description |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
Configure la façon dont les attentes sur les tâches retournées à partir d’un jetable asynchrone sont effectuées. |
| CopyToAsync(Stream, PipeWriter, CancellationToken) |
Lit de façon asynchrone les octets des Stream octets et les écrit dans le jeton d’annulation spécifié PipeWriter. |