NetworkStream.ReadAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
ReadAsync(Memory<Byte>, CancellationToken) |
Legge i dati da NetworkStream e li archivia in un intervallo di memoria di byte come operazione asincrona. |
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(Memory<Byte>, CancellationToken)
- Origine:
- NetworkStream.cs
- Origine:
- NetworkStream.cs
- Origine:
- NetworkStream.cs
Legge i dati da NetworkStream e li archivia in un intervallo di memoria di byte come operazione asincrona.
public override System.Threading.Tasks.ValueTask<int> ReadAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametri
- cancellationToken
- CancellationToken
Token da monitorare per le richieste di annullamento.
Restituisce
ValueTask<TResult> che rappresenta l'operazione di lettura asincrona. Il valore della proprietà Result contiene il numero totale di byte letti in buffer
.
Eccezioni
L'oggetto NetworkStream non supporta la lettura.
Si è verificato un errore durante l'accesso al socket.
-oppure-
Si è verificato un errore durante la lettura dalla rete.
NetworkStream è chiuso.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
Questo metodo legge la quantità di dati disponibile in buffer
e restituisce il numero di byte letti correttamente.
Nota
Verificare se l'oggetto NetworkStream è leggibile chiamando la CanRead proprietà. Se si tenta di leggere da un NetworkStream oggetto che non è leggibile, si otterrà un InvalidOperationExceptionoggetto .
Nota
Se si riceve un IOExceptionoggetto , controllare la InnerException proprietà per determinare se è stata causata da un SocketExceptionoggetto . In tal caso, usare la ErrorCode proprietà per ottenere il codice di errore specifico e fare riferimento alla documentazione del codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Si applica a
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Origine:
- NetworkStream.cs
- Origine:
- NetworkStream.cs
- Origine:
- NetworkStream.cs
Legge i dati da NetworkStream e li archivia in un intervallo specificato di una matrice di byte come operazione asincrona.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int size, System::Threading::CancellationToken cancellationToken);
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int size, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Parametri
- buffer
- Byte[]
Buffer in cui scrivere i dati.
- offset
- Int32
Posizione in buffer
in cui avviare l'archiviazione dei dati.
- sizecount
- Int32
Numero di byte da leggere dalla classe NetworkStream.
- cancellationToken
- CancellationToken
Token da monitorare per le richieste di annullamento.
Restituisce
Attività che rappresenta l'operazione di lettura asincrona. Il valore della proprietà Result contiene il numero totale di byte letti in buffer
.
Eccezioni
L'oggetto NetworkStream non supporta la lettura.
Si è verificato un errore durante l'accesso al socket.
-oppure-
Si è verificato un errore durante la lettura dalla rete.
NetworkStream è chiuso.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
Questo metodo legge i dati in buffer
e restituisce il numero di byte letti correttamente. L'operazione ReadAsync
legge la quantità di dati disponibile, fino al numero di byte specificati dal size
parametro.
Nota
Verificare se l'oggetto NetworkStream è leggibile chiamando la CanRead proprietà. Se si tenta di leggere da un NetworkStream oggetto che non è leggibile, si otterrà un InvalidOperationExceptionoggetto .
Nota
Se si riceve un IOExceptionoggetto , controllare la InnerException proprietà per determinare se è stata causata da un SocketExceptionoggetto . In tal caso, usare la ErrorCode proprietà per ottenere il codice di errore specifico e fare riferimento alla documentazione del codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Questo metodo archivia nell'attività che restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Read(Byte[], Int32, Int32).