NetworkStream Classe

Définition

Fournit le flux de données sous-jacent pour l’accès réseau.Provides the underlying stream of data for network access.

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.The following code example demonstrates how to create a NetworkStream from a connected StreamSocket and perform basic synchronous blocking I/O.

// 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.The NetworkStream class provides methods for sending and receiving data over Stream sockets in blocking mode. Pour plus d’informations sur les blocages et les déblocages Socket , consultez utilisation d’un socket client asynchrone.For more information about blocking versus nonblocking Sockets, see Using an Asynchronous Client Socket. Vous pouvez utiliser la NetworkStream classe pour le transfert de données synchrone et asynchrone.You can use the NetworkStream class for both synchronous and asynchronous data transfer. Pour plus d’informations sur les communications synchrones et asynchrones, consultez sockets.For more information about synchronous and asynchronous communication, see Sockets.

Pour créer un NetworkStream , vous devez fournir un connecté Socket .To create a NetworkStream, you must provide a connected Socket. Vous pouvez également spécifier FileAccess l’autorisation NetworkStream dont dispose le sur le fourni Socket .You can also specify what FileAccess permission the NetworkStream has over the provided Socket. Par défaut, la fermeture de NetworkStream ne ferme pas le fourni Socket .By default, closing the NetworkStream does not close the provided 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.If you want the NetworkStream to have permission to close the provided Socket, you must specify true for the value of the ownsSocket parameter.

Utilisez les Write Read méthodes et pour les e/s de blocage synchrones à thread unique simples.Use the Write and Read methods for simple single thread synchronous blocking I/O. 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.If you want to process your I/O using separate threads, consider using the BeginWrite and EndWrite methods, or the BeginRead and EndRead methods for communication.

Le NetworkStream ne prend pas en charge l’accès aléatoire au flux de données réseau.The NetworkStream does not support random access to the network data stream. 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 .The value of the CanSeek property, which indicates whether the stream supports seeking, is always false; reading the Position property, reading the Length property, or calling the Seek method will throw a 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.Read and write operations can be performed simultaneously on an instance of the NetworkStream class without the need for synchronization. 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.As long as there is one unique thread for the write operations and one unique thread for the read operations, there will be no cross-interference between read and write threads and no synchronization is required.

Constructeurs

NetworkStream(Socket)

Crée une nouvelle instance de la classe NetworkStream pour le Socket spécifié.Creates a new instance of the NetworkStream class for the specified Socket.

NetworkStream(Socket, Boolean)

Initialise une nouvelle instance de la classe NetworkStream pour le Socket spécifié avec l'appartenance Socket spécifiée.Initializes a new instance of the NetworkStream class for the specified Socket with the specified Socket ownership.

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.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights.

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.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights and the specified Socket ownership.

Propriétés

CanRead

Obtient une valeur indiquant si NetworkStream prend en charge la lecture.Gets a value that indicates whether the NetworkStream supports reading.

CanSeek

Obtient une valeur qui indique si le flux prend en charge la recherche.Gets a value that indicates whether the stream supports seeking. Cette propriété n'est pas prise en charge actuellement.This property is not currently supported. Cette propriété retourne toujours false.This property always returns false.

CanTimeout

Indique si les propriétés de délai d'attente peuvent être utilisées pour NetworkStream.Indicates whether timeout properties are usable for NetworkStream.

CanTimeout

Obtient une valeur qui détermine si le flux actuel peut dépasser le délai d'attente.Gets a value that determines whether the current stream can time out.

(Hérité de Stream)
CanWrite

Obtient une valeur indiquant si NetworkStream prend en charge l'écriture.Gets a value that indicates whether the NetworkStream supports writing.

DataAvailable

Obtient une valeur indiquant si des données sont disponibles sur le NetworkStream à lire.Gets a value that indicates whether data is available on the NetworkStream to be read.

Length

Obtient la longueur des données disponibles dans le flux.Gets the length of the data available on the stream. Cette propriété n'est pas actuellement prise en charge et lève toujours NotSupportedException.This property is not currently supported and always throws a NotSupportedException.

Position

Obtient ou définit la position actuelle dans le flux.Gets or sets the current position in the stream. Cette propriété n'est pas actuellement prise en charge et lève toujours NotSupportedException.This property is not currently supported and always throws a NotSupportedException.

Readable

Obtient ou définit une valeur indiquant si NetworkStream peut être lu.Gets or sets a value that indicates whether the NetworkStream can be read.

ReadTimeout

Obtient ou définit la durée pendant laquelle une opération de lecture reste bloquée en attendant des données.Gets or sets the amount of time that a read operation blocks waiting for data.

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.Gets or sets a value, in milliseconds, that determines how long the stream will attempt to read before timing out.

(Hérité de Stream)
Socket

Obtient le Socket sous-jacent.Gets the underlying Socket.

Writeable

Obtient une valeur qui indique si NetworkStream est accessible en écriture.Gets a value that indicates whether the NetworkStream is writable.

WriteTimeout

Obtient ou définit la durée pendant laquelle une opération d'écriture reste bloquée en attendant des données.Gets or sets the amount of time that a write operation blocks waiting for data.

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.Gets or sets a value, in milliseconds, that determines how long the stream will attempt to write before timing out.

(Hérité de Stream)

Méthodes

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

Démarre une lecture asynchrone de NetworkStream.Begins an asynchronous read from the NetworkStream.

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

Débute une opération de lecture asynchrone.Begins an asynchronous read operation. (Utilisez ReadAsync(Byte[], Int32, Int32) à la place.)(Consider using ReadAsync(Byte[], Int32, Int32) instead.)

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

Démarre une écriture asynchrone dans un flux.Begins an asynchronous write to a stream.

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

Débute une opération d'écriture asynchrone.Begins an asynchronous write operation. (Utilisez WriteAsync(Byte[], Int32, Int32) à la place.)(Consider using WriteAsync(Byte[], Int32, Int32) instead.)

(Hérité de Stream)
Close()

Ferme le NetworkStream.Closes the NetworkStream.

Close()

Ferme le flux actuel et libère toutes les ressources (comme les sockets et les handles de fichiers) associées à celui-ci.Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream. Au lieu d'appeler cette méthode, assurez-vous que le flux est correctement supprimé.Instead of calling this method, ensure that the stream is properly disposed.

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

Ferme NetworkStream après avoir attendu le temps spécifié pour permettre l'envoi des données.Closes the NetworkStream after waiting the specified time to allow data to be sent.

CopyTo(Stream)

Lit les octets du flux actuel et les écrit dans un autre flux.Reads the bytes from the current stream and writes them to another stream.

(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.Reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

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

Lit de façon asynchrone tous les octets du flux actuel et les écrit dans un autre flux.Asynchronously reads the bytes from the current stream and writes them to another stream.

(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é.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified cancellation token.

(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.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(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.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size and cancellation token.

(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.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

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

Alloue un objet WaitHandle.Allocates a WaitHandle object.

(Hérité de Stream)
Dispose()

Libère toutes les ressources utilisées par Stream.Releases all resources used by the 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.Releases the unmanaged resources used by the NetworkStream and optionally releases the managed resources.

DisposeAsync()

Libère de façon asynchrone les ressources non managées utilisées par Stream.Asynchronously releases the unmanaged resources used by the Stream.

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

Gère la fin d'une lecture asynchrone.Handles the end of an asynchronous read.

EndRead(IAsyncResult)

Attend que la requête asynchrone en attente se termine.Waits for the pending asynchronous read to complete. (Utilisez ReadAsync(Byte[], Int32, Int32) à la place.)(Consider using ReadAsync(Byte[], Int32, Int32) instead.)

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

Gère la fin d'une écriture asynchrone.Handles the end of an asynchronous write.

EndWrite(IAsyncResult)

Termine une opération d'écriture asynchrone.Ends an asynchronous write operation. (Utilisez WriteAsync(Byte[], Int32, Int32) à la place.)(Consider using WriteAsync(Byte[], Int32, Int32) instead.)

(Hérité de Stream)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
Finalize()

Libère toutes les ressources utilisées par NetworkStream.Releases all resources used by the NetworkStream.

Flush()

Vide les données du flux.Flushes data from the stream. Cette méthode est réservée à une utilisation ultérieure.This method is reserved for future use.

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.Asynchronously clears all buffers for this stream and causes any buffered data to be written to the underlying device.

(Hérité de Stream)
FlushAsync(CancellationToken)

Vide les données du flux en tant qu'opération asynchrone.Flushes data from the stream as an asynchronous operation.

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.Asynchronously clears all buffers for this stream, causes any buffered data to be written to the underlying device, and monitors cancellation requests.

(Hérité de Stream)
GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetLifetimeService()

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.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Hérité de MarshalByRefObject)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
InitializeLifetimeService()

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.Obtains a lifetime service object to control the lifetime policy for this instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

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

Crée une copie superficielle de l'objet MarshalByRefObject actuel.Creates a shallow copy of the current MarshalByRefObject object.

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

Assure la prise en charge d'un Contract.Provides support for a Contract.

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

Lit des données dans NetworkStream et les stocke dans un tableau d’octets.Reads data from the NetworkStream and stores it to a byte array.

Read(Span<Byte>)

Lit des données dans NetworkStream et les stocke dans une plage d’octets en mémoire.Reads data from the NetworkStream and stores it to a span of bytes in memory.

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.When overridden in a derived class, reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

(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.Asynchronously reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

(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.Reads data from the NetworkStream and stores it to a specified range of a byte array as an asynchronous operation.

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.Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.

(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.Reads data from the NetworkStream and stores it in a byte memory range as an asynchronous operation.

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.Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.

(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.Reads a byte from the NetworkStream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.

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.Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.

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

Affecte la valeur donnée à la position actuelle du flux.Sets the current position of the stream to the given value. Cette méthode n'est pas actuellement prise en charge et lève toujours NotSupportedException.This method is not currently supported and always throws a NotSupportedException.

SetLength(Int64)

Définit la longueur du flux.Sets the length of the stream. Cette méthode lève toujours NotSupportedException.This method always throws a NotSupportedException.

ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(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.Writes data to the NetworkStream from a specified range of a byte array.

Write(ReadOnlySpan<Byte>)

Écrit des données dans NetworkStream à partir d’une plage d’octets en lecture seule.Writes data to the NetworkStream from a read-only byte span.

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.When overridden in a derived class, writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

(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.Asynchronously writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

(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.Writes data to the NetworkStream from the specified range of a byte array as an asynchronous operation.

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.Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.

(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.Writes data to the NetworkStream from a read-only memory byte memory range as an asynchronous operation.

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.Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.

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

Écrit un octet à la position actuelle dans NetworkStream et avance d’un octet la position dans le flux.Writes a byte to the current position in the NetworkStream and advances the position within the stream by one byte.

WriteByte(Byte)

Écrit un octet à la position actuelle dans le flux et avance d'un octet la position dans le flux.Writes a byte to the current position in the stream and advances the position within the stream by one byte.

(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.Releases all resources used by the NetworkStream.

IDisposable.Dispose()

Libère toutes les ressources utilisées par Stream.Releases all resources used by the Stream.

(Hérité de Stream)

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.Configures how awaits on the tasks returned from an async disposable are performed.

S’applique à

Voir aussi