NetworkStream NetworkStream NetworkStream NetworkStream Class

Definizione

Offre il flusso sottostante di dati per l'accesso alla rete.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
Public Class NetworkStream
Inherits Stream
Ereditarietà

Esempi

Nell'esempio di codice seguente viene illustrato come creare NetworkStream un oggetto da Stream un oggetto connesso Socket ed eseguire i/O di blocco sincrono di 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

Commenti

La NetworkStream classe fornisce metodi per l'invio e la ricezione Stream di dati tramite socket in modalità di blocco.The NetworkStream class provides methods for sending and receiving data over Stream sockets in blocking mode. Per ulteriori informazioni sul blocco rispetto Socketa, vedere Utilizzo di un socket client asincrono.For more information about blocking versus nonblocking Sockets, see Using an Asynchronous Client Socket. È possibile utilizzare la NetworkStream classe per il trasferimento di dati sincrono e asincrono.You can use the NetworkStream class for both synchronous and asynchronous data transfer. Per ulteriori informazioni sulla comunicazione sincrona e asincrona, vedere Sockets.For more information about synchronous and asynchronous communication, see Sockets.

Per creare un NetworkStreamoggetto, è necessario fornire un Socketconnesso.To create a NetworkStream, you must provide a connected Socket. È inoltre possibile specificare FileAccess l' NetworkStream autorizzazione fornita da sul specificato Socket.You can also specify what FileAccess permission the NetworkStream has over the provided Socket. Per impostazione predefinita, la NetworkStream chiusura di non chiude l' Socketoggetto specificato.By default, closing the NetworkStream does not close the provided Socket. Se si desidera che NetworkStream disponga dell'autorizzazione per chiudere l'oggetto Socketspecificato, è necessario true specificare per il valore del ownsSocket parametro.If you want the NetworkStream to have permission to close the provided Socket, you must specify true for the value of the ownsSocket parameter.

Usare i Write metodi Read e per l'i/O di blocco sincrono a thread singolo.Use the Write and Read methods for simple single thread synchronous blocking I/O. Se si desidera elaborare l'i/o utilizzando thread distinti, è consigliabile utilizzare i BeginWrite metodi EndWrite e oppure i metodi BeginRead e EndRead per la comunicazione.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.

NetworkStream Non supporta l'accesso casuale al flusso di dati di rete.The NetworkStream does not support random access to the network data stream. Il CanSeek valore della proprietà, che indica se il flusso supporta la ricerca, è sempre false; la lettura Position della proprietà, la Length lettura della proprietà o la Seek chiamata al metodo genererà un' 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.

Le operazioni di lettura e scrittura possono essere eseguite contemporaneamente in un'istanza NetworkStream della classe senza la necessità di sincronizzazione.Read and write operations can be performed simultaneously on an instance of the NetworkStream class without the need for synchronization. Fino a quando è presente un thread univoco per le operazioni di scrittura e un thread univoco per le operazioni di lettura, non vi sarà alcuna interferenza tra i thread di lettura e scrittura e non è necessaria alcuna sincronizzazione.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.

Costruttori

NetworkStream(Socket) NetworkStream(Socket) NetworkStream(Socket) NetworkStream(Socket)

Crea una nuova istanza della classe NetworkStream per l'oggetto Socket specificato.Creates a new instance of the NetworkStream class for the specified Socket.

NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean)

Inizializza una nuova istanza della classe NetworkStream per il Socket specificato con la proprietà Socket specificata.Initializes a new instance of the NetworkStream class for the specified Socket with the specified Socket ownership.

NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess)

Crea una nuova istanza della classe NetworkStream per l'oggetto Socket specificato con i diritti di accesso specificati.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights.

NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean)

Crea una nuova istanza della classe NetworkStream per l'oggetto Socket specificato con i diritti di accesso e la appartenenza alla classe Socket specificati.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights and the specified Socket ownership.

Proprietà

CanRead CanRead CanRead CanRead

Ottiene un valore che indica se la classe NetworkStream supporta la lettura.Gets a value that indicates whether the NetworkStream supports reading.

CanSeek CanSeek CanSeek CanSeek

Ottiene un valore che indica se il flusso supporta la ricerca.Gets a value that indicates whether the stream supports seeking. Questa proprietà non è attualmente supportata. La proprietà restituisce sempre false.This property is not currently supported.This property always returns false.

CanTimeout CanTimeout CanTimeout CanTimeout

Indica se le proprietà di timeout sono utilizzabili per NetworkStream.Indicates whether timeout properties are usable for NetworkStream.

CanWrite CanWrite CanWrite CanWrite

Ottiene un valore che indica se la classe NetworkStream supporta la scrittura.Gets a value that indicates whether the NetworkStream supports writing.

DataAvailable DataAvailable DataAvailable DataAvailable

Ottiene un valore che indica se i dati sono disponibili per la lettura nella classe NetworkStream.Gets a value that indicates whether data is available on the NetworkStream to be read.

Length Length Length Length

Ottiene la lunghezza dei dati disponibili nel flusso.Gets the length of the data available on the stream. Questa proprietà non è attualmente supportata e genera sempre un'eccezione NotSupportedException.This property is not currently supported and always throws a NotSupportedException.

Position Position Position Position

Ottiene o imposta la posizione corrente nel flusso.Gets or sets the current position in the stream. Questa proprietà non è attualmente supportata e genera sempre un'eccezione NotSupportedException.This property is not currently supported and always throws a NotSupportedException.

Readable Readable Readable Readable

Ottiene o imposta un valore che indica se è possibile leggere la classe NetworkStream.Gets or sets a value that indicates whether the NetworkStream can be read.

ReadTimeout ReadTimeout ReadTimeout ReadTimeout

Ottiene o imposta l'intervallo di tempo per il quale un'operazione di lettura si blocca in attesa dei dati.Gets or sets the amount of time that a read operation blocks waiting for data.

Socket Socket Socket Socket

Ottiene l'elemento Socket sottostante.Gets the underlying Socket.

Writeable Writeable Writeable Writeable

Ottiene un valore che indica se è possibile scrivere nella classe NetworkStream.Gets a value that indicates whether the NetworkStream is writable.

WriteTimeout WriteTimeout WriteTimeout WriteTimeout

Ottiene o imposta l'intervallo di tempo per il quale un'operazione di scrittura si blocca in attesa dei dati.Gets or sets the amount of time that a write operation blocks waiting for data.

Metodi

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

Avvia una lettura asincrona dalla classe NetworkStream.Begins an asynchronous read from the NetworkStream.

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

Avvia una scrittura asincrona in un flusso.Begins an asynchronous write to a stream.

Close() Close() Close() Close()

Chiude l'oggetto NetworkStream.Closes the NetworkStream.

Close(Int32) Close(Int32) Close(Int32) Close(Int32)

Chiude l'oggetto NetworkStream una volta trascorso l'intervallo di tempo specificato per consentire l'invio dei dati.Closes the NetworkStream after waiting the specified time to allow data to be sent.

CopyTo(Stream) CopyTo(Stream) CopyTo(Stream) CopyTo(Stream)

Legge i byte dal flusso corrente e li scrive in un altro flusso.Reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32)

Legge tutti i byte dal flusso corrente e li scrive in un altro flusso, usando una dimensione di buffer specificata.Reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream)

Legge in modo asincrono i byte dal flusso corrente e li scrive in un altro flusso.Asynchronously reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken)

Legge in modo asincrono i byte dal flusso corrente e li scrive in un altro flusso, usando un token di annullamento specificato.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified cancellation token.

(Inherited from Stream)
CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32)

Legge in modo asincrono tutti i byte dal flusso corrente e li scrive in un altro flusso, utilizzando una dimensione di buffer specificata.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken)

Legge in modo asincrono i byte dal flusso corrente e li scrive in un altro flusso, usando una dimensione di buffer specificata e un token di annullamento.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size and cancellation token.

(Inherited from Stream)
CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateWaitHandle() CreateWaitHandle() CreateWaitHandle() CreateWaitHandle()

Alloca un oggetto WaitHandle.Allocates a WaitHandle object.

(Inherited from Stream)
Dispose() Dispose() Dispose() Dispose()

Rilascia tutte le risorse usate da Stream.Releases all resources used by the Stream.

(Inherited from Stream)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Rilascia le risorse non gestite usate da NetworkStream e, facoltativamente, le risorse gestite.Releases the unmanaged resources used by the NetworkStream and optionally releases the managed resources.

DisposeAsync() DisposeAsync() DisposeAsync() DisposeAsync()

Consente di liberare in modo asincrono le risorse non gestite utilizzate da Stream.Asynchronously releases the unmanaged resources used by the Stream.

(Inherited from Stream)
EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult)

Gestisce la fine di una lettura asincrona.Handles the end of an asynchronous read.

EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult)

Gestisce la fine di una scrittura asincrona.Handles the end of an asynchronous write.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Rilascia tutte le risorse usate da NetworkStream.Releases all resources used by the NetworkStream.

Flush() Flush() Flush() Flush()

Scarica dati da un flusso.Flushes data from the stream. Questo metodo è riservato per utilizzi futuri.This method is reserved for future use.

FlushAsync() FlushAsync() FlushAsync() FlushAsync()

Cancella in modo asincrono i dati di tutti i buffer del flusso e determina la scrittura dei dati memorizzati nel buffer nel dispositivo sottostante.Asynchronously clears all buffers for this stream and causes any buffered data to be written to the underlying device.

(Inherited from Stream)
FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken)

Svuota i dati dal flusso come operazione asincrona.Flushes data from the stream as an asynchronous operation.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ObjectInvariant() ObjectInvariant() ObjectInvariant() ObjectInvariant()

Fornisce supporto per un oggetto Contract.Provides support for a Contract.

(Inherited from Stream)
Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

Legge i dati da NetworkStream e li archivia in una matrice di byte.Reads data from the NetworkStream and stores it to a byte array.

Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>)

Legge i dati da NetworkStream e li archivia in un intervallo di byte in memoria.Reads data from the NetworkStream and stores it to a span of bytes in memory.

ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32)

Legge in modo asincrono una sequenza di byte dal flusso corrente e passa alla posizione successiva nel flusso in base al numero di byte letti.Asynchronously reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

(Inherited from Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken)

Legge i dati da NetworkStream e li archivia in un intervallo specificato di una matrice di byte come operazione asincrona.Reads data from the NetworkStream and stores it to a specified range of a byte array as an asynchronous operation.

ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken)

Legge i dati da NetworkStream e li archivia in un intervallo di memoria di byte come operazione asincrona.Reads data from the NetworkStream and stores it in a byte memory range as an asynchronous operation.

ReadByte() ReadByte() ReadByte() ReadByte()

Legge un byte da NetworkStream e sposta in avanti la posizione corrente all'interno del flusso di un byte o restituisce -1 se si trova alla fine del flusso.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.

Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin)

Imposta la posizione corrente del flusso sul valore dato.Sets the current position of the stream to the given value. Questo metodo non è attualmente supportato e genera sempre un'eccezione NotSupportedException.This method is not currently supported and always throws a NotSupportedException.

SetLength(Int64) SetLength(Int64) SetLength(Int64) SetLength(Int64)

Imposta la lunghezza del flusso.Sets the length of the stream. Mediante questo metodo viene sempre generata un'eccezione NotSupportedException.This method always throws a NotSupportedException.

ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)
Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

Scrive i dati in NetworkStream da un intervallo specificato di una matrice di byte.Writes data to the NetworkStream from a specified range of a byte array.

Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>)

Scrive i dati in NetworkStream da un intervallo di byte di sola lettura.Writes data to the NetworkStream from a read-only byte span.

WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32)

Scrive in modo asincrono una sequenza di byte nel flusso corrente e passa alla posizione successiva nel flusso in base al numero di byte scritti.Asynchronously writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

(Inherited from Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken)

Scrive i dati in NetworkStream dall'intervallo specificato di una matrice di byte come operazione asincrona.Writes data to the NetworkStream from the specified range of a byte array as an asynchronous operation.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Scrive i dati in NetworkStream da un intervallo di memoria di byte di sola lettura come operazione asincrona.Writes data to the NetworkStream from a read-only memory byte memory range as an asynchronous operation.

WriteByte(Byte) WriteByte(Byte) WriteByte(Byte) WriteByte(Byte)

Scrive un byte nella posizione corrente di NetworkStream e sposta in avanti di un byte la posizione nel flusso.Writes a byte to the current position in the NetworkStream and advances the position within the stream by one byte.

Implementazioni dell'interfaccia esplicita

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Rilascia tutte le risorse usate da NetworkStream.Releases all resources used by the NetworkStream.

Si applica a

Vedi anche