NetworkStream Classe

Définition

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
NetworkStream
Héritage
Implémente

Exemples

L’exemple de code suivant montre comment créer un NetworkStream à partir d’un connecté Stream Socket et effectuer des e/s de blocage synchrones de base.

// Examples for constructors that do not specify file permission.
// Create the NetworkStream for communicating with the remote host.
NetworkStream^ myNetworkStream;

if ( networkStreamOwnsSocket )
{
   myNetworkStream = gcnew NetworkStream( mySocket,true );
}
else
{
   myNetworkStream = gcnew NetworkStream( mySocket );
}
// Examples for constructors that do not specify file permission.

// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;

if (networkStreamOwnsSocket){
     myNetworkStream = new NetworkStream(mySocket, true);
}
else{
     myNetworkStream = new NetworkStream(mySocket);
}
' Examples for constructors that do not specify file permission.
' Create the NetworkStream for communicating with the remote host.
Dim myNetworkStream As NetworkStream

If networkStreamOwnsSocket Then
   myNetworkStream = New NetworkStream(mySocket, True)
Else
   myNetworkStream = New NetworkStream(mySocket)
End If

Remarques

La NetworkStream classe fournit des méthodes pour envoyer et recevoir des données sur des Stream sockets en mode blocage. Pour plus d’informations sur les blocages et les déblocages Socket , consultez utilisation d’un socket client asynchrone. Vous pouvez utiliser la NetworkStream classe pour le transfert de données synchrone et asynchrone. Pour plus d’informations sur les communications synchrones et asynchrones, consultez sockets.

Pour créer un NetworkStream , vous devez fournir un connecté Socket . Vous pouvez également spécifier FileAccess l’autorisation NetworkStream dont dispose le sur le fourni Socket . Par défaut, la fermeture de NetworkStream ne ferme pas le fourni Socket . Si vous souhaitez que le NetworkStream soit autorisé à fermer le fourni Socket , vous devez spécifier true pour la valeur du ownsSocket paramètre.

Utilisez les Write Read méthodes et pour les e/s de blocage synchrones à thread unique simples. Si vous souhaitez traiter vos e/s à l’aide de threads distincts, envisagez d’utiliser les BeginWrite EndWrite méthodes et, ou les BeginRead EndRead méthodes et pour la communication.

Le 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 ; la lecture de la false Position propriété, la lecture de la Length propriété ou l’appel de la Seek méthode lève une NotSupportedException .

Les opérations de lecture et d’écriture peuvent être effectuées simultanément sur une instance de la NetworkStream classe sans nécessiter de synchronisation. Tant qu’il existe un seul thread unique pour les opérations d’écriture et un seul thread unique pour les opérations de lecture, il n’y aura aucune interférence entre les threads de lecture et d’écriture et aucune synchronisation n’est requise.

Constructeurs

NetworkStream(Socket)

Crée une nouvelle instance de la classe NetworkStream pour le Socket spécifié.

NetworkStream(Socket, Boolean)

Initialise une nouvelle instance de la classe NetworkStream pour le Socket spécifié avec l'appartenance Socket spécifiée.

NetworkStream(Socket, FileAccess)

Crée une nouvelle instance de la classe NetworkStream pour le Socket spécifié possédant les droits d'accès donnés.

NetworkStream(Socket, FileAccess, Boolean)

Crée une instance de la classe NetworkStream pour le Socket spécifié possédant les droits d'accès et l'appartenance Socket donnés.

Propriétés

CanRead

Obtient une valeur indiquant si NetworkStream prend en charge la lecture.

CanSeek

Obtient une valeur qui indique si le flux prend en charge la recherche. Cette propriété n'est pas prise en charge actuellement. Cette propriété retourne toujours false.

CanTimeout

Indique si les propriétés de délai d'attente peuvent être utilisées pour NetworkStream.

CanTimeout

Obtient une valeur qui détermine si le flux actuel peut dépasser le délai d'attente.

(Hérité de Stream)
CanWrite

Obtient une valeur indiquant si NetworkStream prend en charge l'écriture.

DataAvailable

Obtient une valeur indiquant si des données sont disponibles sur le NetworkStream à lire.

Length

Obtient la longueur des données disponibles dans le flux. Cette propriété n'est pas actuellement prise en charge et lève toujours NotSupportedException.

Position

Obtient ou définit la position actuelle dans le flux. Cette propriété n'est pas actuellement prise en charge et lève toujours NotSupportedException.

Readable

Obtient ou définit une valeur indiquant si NetworkStream peut être lu.

ReadTimeout

Obtient ou définit la durée pendant laquelle une opération de lecture reste bloquée en attendant des données.

ReadTimeout

Obtient ou définit une valeur, exprimée en millisecondes, qui définit la durée pendant laquelle le flux tentera d’effectuer la lecture avant dépassement du délai d’attente.

(Hérité de Stream)
Socket

Obtient le Socket sous-jacent.

Writeable

Obtient une valeur qui indique si NetworkStream est accessible en écriture.

WriteTimeout

Obtient ou définit la durée pendant laquelle une opération d'écriture reste bloquée en attendant des données.

WriteTimeout

Obtient ou définit une valeur, exprimée en millisecondes, qui définit la durée pendant laquelle le flux tentera d’écrire des données avant l’expiration du délai d’attente.

(Hérité de Stream)

Méthodes

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Démarre une lecture asynchrone de NetworkStream.

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Débute une opération de lecture asynchrone. (Utilisez ReadAsync(Byte[], Int32, Int32) à la place.)

(Hérité de Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Démarre une écriture asynchrone dans un flux.

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Débute une opération d'écriture asynchrone. (Utilisez WriteAsync(Byte[], Int32, Int32) à la place.)

(Hérité de Stream)
Close()

Ferme le NetworkStream.

Close()

Ferme le flux actuel et libère toutes les ressources (comme les sockets et les handles de fichiers) associées à celui-ci. Au lieu d'appeler cette méthode, assurez-vous que le flux est correctement supprimé.

(Hérité de Stream)
Close(Int32)

Ferme NetworkStream après avoir attendu le temps spécifié pour permettre l'envoi des données.

CopyTo(Stream)

Lit les octets du flux actuel et les écrit dans un autre flux.

(Hérité de Stream)
CopyTo(Stream, Int32)

Lit tous les octets du flux actuel et les écrit dans un autre flux, en utilisant une taille de mémoire tampon spécifiée.

(Hérité de Stream)
CopyToAsync(Stream)

Lit de façon asynchrone tous les octets du flux actuel et les écrit dans un autre flux.

(Hérité de Stream)
CopyToAsync(Stream, CancellationToken)

Lit de façon asynchrone les octets du flux actuel et les écrit dans un autre flux, en utilisant un jeton d’annulation spécifié.

(Hérité de Stream)
CopyToAsync(Stream, Int32)

Lit de façon asynchrone tous les octets du flux actuel et les écrit dans un autre flux, en utilisant une taille de mémoire tampon spécifiée.

(Hérité de Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Lit de façon asynchrone les octets du flux actuel et les écrit dans un autre flux, en utilisant une taille de mémoire tampon et d'un jeton d'annulation spécifiés.

(Hérité de Stream)
CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
CreateWaitHandle()
Obsolète.
Obsolète.

Alloue un objet WaitHandle.

(Hérité de Stream)
Dispose()

Libère toutes les ressources utilisées par Stream.

(Hérité de Stream)
Dispose(Boolean)

Libère les ressources non managées utilisées par NetworkStream et libère éventuellement les ressources managées.

DisposeAsync()

Libère de façon asynchrone les ressources non managées utilisées par Stream.

(Hérité de Stream)
EndRead(IAsyncResult)

Gère la fin d'une lecture asynchrone.

EndRead(IAsyncResult)

Attend que la requête asynchrone en attente se termine. (Utilisez ReadAsync(Byte[], Int32, Int32) à la place.)

(Hérité de Stream)
EndWrite(IAsyncResult)

Gère la fin d'une écriture asynchrone.

EndWrite(IAsyncResult)

Termine une opération d'écriture asynchrone. (Utilisez WriteAsync(Byte[], Int32, Int32) à la place.)

(Hérité de Stream)
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 NetworkStream.

Flush()

Vide les données du flux. Cette méthode est réservée à une utilisation ultérieure.

FlushAsync()

Efface de façon asynchrone toutes les mémoires tampons pour ce flux et provoque l'écriture des 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.

FlushAsync(CancellationToken)

Efface de façon asynchrone toutes les mémoires tampons pour ce flux, provoque l'écriture des données mises en mémoire tampon sur l'appareil sous-jacent et surveille les requêtes d'annulation.

(Hérité de Stream)
GetHashCode()

Fait office 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 en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetType()

Obtient le 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 Object actuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
ObjectInvariant()
Obsolète.

Assure la prise en charge d'un Contract.

(Hérité de Stream)
Read(Byte[], Int32, Int32)

Lit des données dans NetworkStream et les stocke dans un tableau d’octets.

Read(Span<Byte>)

Lit des données dans NetworkStream et les stocke dans une plage d’octets en mémoire.

Read(Span<Byte>)

En cas de remplacement dans une classe dérivée, lit une séquence d'octets dans le flux actuel et avance la position dans le flux du nombre d'octets lus.

(Hérité de Stream)
ReadAsync(Byte[], Int32, Int32)

Lit de façon asynchrone une séquence d'octets dans le flux actuel et avance la position dans le flux du nombre d'octets lus.

(Hérité de Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Lit des données dans 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 dans le flux actuel, avance la position dans le flux du nombre d'octets lus et surveille les demandes d'annulation.

(Hérité de Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Lit des données dans NetworkStream 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 dans le flux actuel, avance la position dans le flux du nombre d'octets lus et surveille les demandes d'annulation.

(Hérité de Stream)
ReadByte()

Lit un octet dans NetworkStream et avance d’un octet la position au sein du flux, ou retourne -1 si la fin du flux a été atteinte.

ReadByte()

Lit un octet du flux et avance d'un octet la position au sein du flux, ou retourne -1 si la fin du flux a été atteinte.

(Hérité de Stream)
Seek(Int64, SeekOrigin)

Affecte la valeur donnée à la position actuelle du flux. Cette méthode n'est pas actuellement prise en charge et lève toujours NotSupportedException.

SetLength(Int64)

Définit la longueur du flux. Cette méthode lève toujours 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 NetworkStream à partir d’une plage spécifiée d’un tableau d’octets.

Write(ReadOnlySpan<Byte>)

Écrit des données dans NetworkStream à partir d’une plage d’octets en lecture seule.

Write(ReadOnlySpan<Byte>)

En cas de remplacement dans une classe dérivée, écrit une séquence d'octets dans le flux actuel et avance la position actuelle dans ce flux du nombre d'octets écrits.

(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 le flux du nombre d'octets écrits.

(Hérité de Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Écrit des données dans NetworkStream à partir d’une 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 du nombre d'octets écrits et surveille les demandes d'annulation.

(Hérité de Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Écrit des données dans NetworkStream à partir d’une plage de mémoire d’octets en 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 du nombre d'octets écrits et surveille les demandes d'annulation.

(Hérité de Stream)
WriteByte(Byte)

Écrit un octet à la position actuelle dans NetworkStream et avance d’un octet la position dans le flux.

WriteByte(Byte)

Écrit un octet à la position actuelle dans le flux et avance d'un octet la position dans le flux.

(Hérité de Stream)

Implémentations d’interfaces explicites

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 NetworkStream.

Méthodes d’extension

ConfigureAwait(IAsyncDisposable, Boolean)

Configure la façon dont les attentes sur les tâches retournées à partir d’un élément supprimable asynchrone sont effectuées.

S’applique à

Voir aussi