NetworkStream Classe

Definizione

Offre il flusso sottostante di dati per l'accesso alla rete.

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
Ereditarietà
NetworkStream
Ereditarietà
Implementazioni

Esempio

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

Commenti

La NetworkStream classe fornisce metodi per l'invio e la ricezione di dati tramite Stream socket in modalità di blocco. Per altre informazioni sul blocco e sul non Socketblocco di s, vedere Uso di un socket client asincrono. È possibile usare la classe per il NetworkStream trasferimento dei dati sia sincrono che asincrono. Per altre informazioni sulla comunicazione sincrona e asincrona, vedere Sockets.

Per creare un NetworkStreamoggetto , è necessario fornire un oggetto connesso Socket. È anche possibile specificare l'autorizzazione FileAccess NetworkStream disponibile per l'oggetto fornito Socket. Per impostazione predefinita, la chiusura di NetworkStream non chiude l'oggetto specificato Socket. Se si desidera che l'oggetto disponga dell'autorizzazione NetworkStream per chiudere l'oggetto specificato Socket, è necessario specificare true per il valore del ownsSocket parametro .

Usare i Write metodi e Read per semplici operazioni di I/O di blocco sincrono a thread singolo. Se si vuole elaborare l'I/O usando thread separati, è consigliabile usare i BeginWrite metodi e EndWrite o i metodi e EndRead per la BeginRead comunicazione.

non NetworkStream supporta l'accesso casuale al flusso di dati di rete. Il valore della CanSeek proprietà , che indica se il flusso supporta la ricerca, è sempre false; la lettura della Position proprietà, la lettura della proprietà o la Length chiamata al Seek metodo genererà un'eccezione NotSupportedException.

Le operazioni di lettura e scrittura possono essere eseguite contemporaneamente in un'istanza della NetworkStream classe senza la necessità di sincronizzazione. Purché sia presente un thread univoco per le operazioni di scrittura e un thread univoco per le operazioni di lettura, non vi sarà alcuna interferenza incrociata tra thread di lettura e scrittura e non è necessaria alcuna sincronizzazione.

Costruttori

NetworkStream(Socket)

Crea una nuova istanza della classe NetworkStream per l'oggetto Socket specificato.

NetworkStream(Socket, Boolean)

Inizializza una nuova istanza della classe NetworkStream per il Socket specificato con la proprietà Socket specificata.

NetworkStream(Socket, FileAccess)

Crea una nuova istanza della classe NetworkStream per l'oggetto Socket specificato con i diritti di accesso specificati.

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.

Proprietà

CanRead

Ottiene un valore che indica se la classe NetworkStream supporta la lettura.

CanSeek

Ottiene un valore che indica se il flusso supporta la ricerca. La proprietà non è attualmente supportata. Questa proprietà restituisce sempre false.

CanTimeout

Indica se le proprietà di timeout sono utilizzabili per NetworkStream.

CanTimeout

Ottiene un valore che determina se il flusso corrente prevede il timeout.

(Ereditato da Stream)
CanWrite

Ottiene un valore che indica se la classe NetworkStream supporta la scrittura.

DataAvailable

Ottiene un valore che indica se i dati sono disponibili per la lettura nella classe NetworkStream.

Length

Ottiene la lunghezza dei dati disponibili nel flusso. Questa proprietà non è attualmente supportata e genera sempre un'eccezione NotSupportedException.

Position

Ottiene o imposta la posizione corrente nel flusso. Questa proprietà non è attualmente supportata e genera sempre un'eccezione NotSupportedException.

Readable

Ottiene o imposta un valore che indica se è possibile leggere la classe NetworkStream.

ReadTimeout

Ottiene o imposta l'intervallo di tempo per il quale un'operazione di lettura si blocca in attesa dei dati.

ReadTimeout

Ottiene o imposta un valore, in millisecondi, che determina per quanto tempo il flusso tenterà la lettura prima del timeout.

(Ereditato da Stream)
Socket

Ottiene l'elemento Socket sottostante.

Writeable

Ottiene un valore che indica se è possibile scrivere nella classe NetworkStream.

WriteTimeout

Ottiene o imposta l'intervallo di tempo per il quale un'operazione di scrittura si blocca in attesa dei dati.

WriteTimeout

Ottiene o imposta un valore, in millisecondi, che determina per quanto tempo il flusso tenterà la scrittura prima del timeout.

(Ereditato da Stream)

Metodi

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

Avvia una lettura asincrona dalla classe NetworkStream.

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

Inizia un'operazione di lettura asincrona. Si consiglia di usare ReadAsync(Byte[], Int32, Int32).

(Ereditato da Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Avvia una scrittura asincrona in un flusso.

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

Inizia un'operazione di scrittura asincrona. Si consiglia di usare WriteAsync(Byte[], Int32, Int32).

(Ereditato da Stream)
Close()

Chiude l'oggetto NetworkStream.

Close()

Chiude il flusso corrente e libera le risorse, come socket e handle di file, ad esso associate. Anziché chiamare questo metodo, assicurarsi che il flusso sia eliminato correttamente.

(Ereditato da Stream)
Close(Int32)

Chiude l'oggetto NetworkStream una volta trascorso l'intervallo di tempo specificato per consentire l'invio dei dati.

Close(TimeSpan)
CopyTo(Stream)

Legge i byte dal flusso corrente e li scrive in un altro flusso.

(Ereditato da Stream)
CopyTo(Stream, Int32)

Legge tutti i byte dal flusso corrente e li scrive in un altro flusso, usando una dimensione di buffer specificata.

(Ereditato da Stream)
CopyToAsync(Stream)

Legge in modo asincrono i byte dal flusso corrente e li scrive in un altro flusso.

(Ereditato da Stream)
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.

(Ereditato da Stream)
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.

(Ereditato da Stream)
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.

(Ereditato da Stream)
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.

(Ereditato da MarshalByRefObject)
CreateWaitHandle()
Obsoleta.
Obsoleta.

Alloca un oggetto WaitHandle.

(Ereditato da Stream)
Dispose()

Rilascia tutte le risorse usate da Stream.

(Ereditato da Stream)
Dispose(Boolean)

Rilascia le risorse non gestite usate da NetworkStream e, facoltativamente, le risorse gestite.

DisposeAsync()

Consente di liberare in modo asincrono le risorse non gestite utilizzate da Stream.

(Ereditato da Stream)
EndRead(IAsyncResult)

Gestisce la fine di una lettura asincrona.

EndRead(IAsyncResult)

Attende il completamento della lettura asincrona in sospeso. Si consiglia di usare ReadAsync(Byte[], Int32, Int32).

(Ereditato da Stream)
EndWrite(IAsyncResult)

Gestisce la fine di una scrittura asincrona.

EndWrite(IAsyncResult)

Termina un'operazione di scrittura asincrona. Si consiglia di usare WriteAsync(Byte[], Int32, Int32).

(Ereditato da Stream)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
Finalize()

Rilascia tutte le risorse usate da NetworkStream.

Flush()

Scarica dati da un flusso. Questo metodo è riservato per utilizzi futuri.

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.

(Ereditato da Stream)
FlushAsync(CancellationToken)

Svuota i dati dal flusso come operazione asincrona.

FlushAsync(CancellationToken)

Cancella in modo asincrono i dati di tutti i buffer del flusso, determina la scrittura dei dati memorizzati nel buffer nel dispositivo sottostante e monitora le richieste di annullamento.

(Ereditato da Stream)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetLifetimeService()
Obsoleta.

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.

(Ereditato da MarshalByRefObject)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
InitializeLifetimeService()
Obsoleta.

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.

(Ereditato da MarshalByRefObject)
ObjectInvariant()
Obsoleta.

Fornisce supporto per un oggetto Contract.

(Ereditato da Stream)
Read(Byte[], Int32, Int32)

Legge i dati da NetworkStream e li archivia in una matrice di byte.

Read(Span<Byte>)

Legge i dati da NetworkStream e li archivia in un intervallo di byte in memoria.

Read(Span<Byte>)

Quando ne viene eseguito l'override in una classe derivata, legge una sequenza di byte dal flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte letti.

(Ereditato da Stream)
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.

(Ereditato da Stream)
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.

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

Legge in modo asincrono una sequenza di byte dal flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte letti e monitora le richieste di annullamento.

(Ereditato da Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Legge i dati da NetworkStream e li archivia in un intervallo di memoria di byte come operazione asincrona.

ReadAsync(Memory<Byte>, CancellationToken)

Legge in modo asincrono una sequenza di byte dal flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte letti e monitora le richieste di annullamento.

(Ereditato da Stream)
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.

ReadByte()

Legge un byte dal flusso e sposta in avanti la posizione corrente all'interno del flusso di un byte o restituisce -1 se si trova alla fine del flusso.

(Ereditato da Stream)
Seek(Int64, SeekOrigin)

Imposta la posizione corrente del flusso sul valore dato. Questo metodo non è attualmente supportato e genera sempre un'eccezione NotSupportedException.

SetLength(Int64)

Imposta la lunghezza del flusso. Mediante questo metodo viene sempre generata un'eccezione NotSupportedException.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
Write(Byte[], Int32, Int32)

Scrive i dati in NetworkStream da un intervallo specificato di una matrice di byte.

Write(ReadOnlySpan<Byte>)

Scrive i dati in NetworkStream da un intervallo di byte di sola lettura.

Write(ReadOnlySpan<Byte>)

Quando ne viene eseguito l'override in una classe derivata, scrive una sequenza di byte nel flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte scritti.

(Ereditato da Stream)
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.

(Ereditato da Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Scrive i dati in NetworkStream dall'intervallo specificato di una matrice di byte come operazione asincrona.

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

Scrive in modo asincrono una sequenza di byte nel flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte scritti e monitora le richieste di annullamento.

(Ereditato da Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Scrive i dati in NetworkStream da un intervallo di memoria di byte di sola lettura come operazione asincrona.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Scrive in modo asincrono una sequenza di byte nel flusso corrente e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte scritti e monitora le richieste di annullamento.

(Ereditato da Stream)
WriteByte(Byte)

Scrive un byte nella posizione corrente di NetworkStream e sposta in avanti di un byte la posizione nel flusso.

WriteByte(Byte)

Scrive un byte nella posizione corrente del flusso e sposta in avanti di un byte la posizione del flusso.

(Ereditato da Stream)

Implementazioni dell'interfaccia esplicita

IDisposable.Dispose()

Questa API supporta l'infrastruttura del prodotto e non è previsto che venga usata direttamente dal codice.

Rilascia tutte le risorse usate da NetworkStream.

Metodi di estensione

ConfigureAwait(IAsyncDisposable, Boolean)

Consente di configurare la modalità di esecuzione delle espressioni await per le attività restituite da un elemento disposable asincrono.

Si applica a

Vedi anche