GZipStream.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 in modo asincrono una sequenza di byte dal flusso GZip corrente in un intervallo di memoria di byte, fa avanzare la posizione all'interno del flusso GZip in base al numero di byte letti e monitora le richieste di annullamento. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Legge in modo asincrono una sequenza di byte dal flusso GZip corrente in una matrice di byte, fa avanzare la posizione all'interno del flusso GZip in base al numero di byte letti e monitora le richieste di annullamento. |
ReadAsync(Memory<Byte>, CancellationToken)
- Origine:
- GZipStream.cs
- Origine:
- GZipStream.cs
- Origine:
- GZipStream.cs
Legge in modo asincrono una sequenza di byte dal flusso GZip corrente in un intervallo di memoria di byte, fa avanzare la posizione all'interno del flusso GZip in base al numero di byte letti e monitora le richieste di annullamento.
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. Il valore predefinito è None.
Restituisce
Attività che rappresenta l'operazione di lettura asincrona e incapsula il numero totale di byte letti nel buffer. È possibile che il valore risultante sia inferiore al numero dei byte allocati nel buffer se la quantità di byte disponibili è minore oppure che corrisponda a zero (0) se è stata raggiunta la fine del flusso GZip.
Eccezioni
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
Importante
A partire da .NET 6, questo metodo potrebbe non leggere tutti i byte richiesti. Per altre informazioni, vedere Letture di byte parziali e zero in DeflateStream, GZipStream e CryptoStream.
Il ReadAsync
metodo consente di eseguire operazioni di I/O a elevato utilizzo di risorse senza bloccare il thread principale. Questa considerazione sulle prestazioni è particolarmente importante nelle app desktop in cui un'operazione di flusso che richiede molto tempo può bloccare il thread dell'interfaccia utente e fare in modo che l'app venga visualizzata come se non funzionasse. I metodi asincroni vengono usati insieme alle async
parole chiave e await
in Visual Basic e C#.
Utilizzare la CanRead proprietà per determinare se l'istanza corrente supporta la lettura.
Se l'operazione viene annullata prima del completamento, l'attività restituita contiene il TaskStatus.Canceled valore per la Task.Status proprietà .
Si applica a
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Origine:
- GZipStream.cs
- Origine:
- GZipStream.cs
- Origine:
- GZipStream.cs
Legge in modo asincrono una sequenza di byte dal flusso GZip corrente in una matrice di byte, fa avanzare la posizione all'interno del flusso GZip in base al numero di byte letti e monitora le richieste di annullamento.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ array, int offset, int count, 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[] array, int offset, int count, 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 (array As Byte(), offset As Integer, count 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
- arraybuffer
- Byte[]
Buffer in cui scrivere i dati.
- offset
- Int32
Offset di byte in corrispondenza del quale iniziare a scrivere dati dal flusso GZip.
- count
- Int32
Numero massimo di byte da leggere.
- cancellationToken
- CancellationToken
Token da monitorare per le richieste di annullamento. Il valore predefinito è None.
Restituisce
Attività che rappresenta l'operazione di lettura asincrona, che esegue il wrapping del numero totale di byte letti. Il valore del risultato può essere minore del numero di byte richiesti se il numero di byte attualmente disponibili è minore di quelli richiesti o può essere pari a 0 (zero) se è stata raggiunta la fine del flusso GZip.
Eccezioni
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
Importante
A partire da .NET 6, questo metodo potrebbe non leggere tutti i byte richiesti. Per altre informazioni, vedere Letture di byte parziali e zero in DeflateStream, GZipStream e CryptoStream.
Il ReadAsync
metodo consente di eseguire operazioni di I/O a elevato utilizzo di risorse senza bloccare il thread principale. Questa considerazione sulle prestazioni è particolarmente importante nelle app desktop in cui un'operazione di flusso che richiede molto tempo può bloccare il thread dell'interfaccia utente e fare in modo che l'app venga visualizzata come se non funzionasse. I metodi asincroni vengono usati insieme alle async
parole chiave e await
in Visual Basic e C#.
Utilizzare la CanRead proprietà per determinare se l'istanza corrente supporta la lettura.
Se l'operazione viene annullata prima del completamento, l'attività restituita contiene il TaskStatus.Canceled valore per la Task.Status proprietà .
Questo metodo archivia nell'attività 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).