GZipStream.BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) 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.
Inizia un'operazione di lettura asincrona. (Si consiglia di usare il metodo ReadAsync(Byte[], Int32, Int32).)
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ array, int offset, int count, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public override IAsyncResult BeginRead (byte[] array, int offset, int count, AsyncCallback? asyncCallback, object? asyncState);
public override IAsyncResult BeginRead (byte[] buffer, int offset, int count, AsyncCallback? asyncCallback, object? asyncState);
public override IAsyncResult BeginRead (byte[] array, int offset, int count, AsyncCallback asyncCallback, object asyncState);
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginRead (array As Byte(), offset As Integer, count As Integer, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult
Public Overrides Function BeginRead (buffer As Byte(), offset As Integer, count As Integer, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult
Parametri
- arraybuffer
- Byte[]
Matrice di byte in cui leggere i dati.
- offset
- Int32
Offset di byte in corrispondenza del quale iniziare la lettura dei dati dal flusso.
- count
- Int32
Numero massimo di byte da leggere.
- asyncCallback
- AsyncCallback
Callback asincrono facoltativo, da chiamare quando l'operazione di lettura è completa.
- asyncState
- Object
Oggetto fornito dall'utente che distingue questa specifica richiesta di lettura asincrona da altre richieste.
Restituisce
Oggetto che rappresenta l'operazione di lettura asincrona, che può essere ancora in sospeso.
Eccezioni
Il metodo ha tentato di leggere in modo asincrono oltre la fine del flusso o si è verificato un errore del disco.
Uno o più argomenti non sono validi.
Sono stati chiamati dei metodi dopo la chiusura del flusso.
L'implementazione corrente di GZipStream non supporta l'operazione di lettura.
Non è possibile eseguire un'operazione di lettura perché il flusso è chiuso.
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.
A partire da .NET Framework 4.5, è possibile eseguire operazioni di lettura asincrone usando il Stream.ReadAsync metodo . Il BeginRead metodo è ancora disponibile nelle versioni correnti per supportare il codice legacy. Tuttavia, è possibile implementare più facilmente le operazioni di I/O asincrone usando i nuovi metodi asincroni. Per altre informazioni, vedere I/O del file asincrono.
Passare il IAsyncResult valore restituito al EndRead metodo del flusso per determinare il numero di byte letti e per rilasciare le risorse del sistema operativo usate per la lettura. A tale scopo, è possibile usare lo stesso codice che ha chiamato BeginRead o in un callback passato a BeginRead.
La posizione corrente nel flusso viene aggiornata quando viene eseguita la lettura o la scrittura asincrona, non al termine dell'operazione di I/O.
Più richieste asincrone simultanee rendono incerto l'ordine di completamento della richiesta.
Utilizzare la CanRead proprietà per determinare se l'oggetto corrente GZipStream supporta la lettura.
Se un flusso viene chiuso o si passa un argomento non valido, le eccezioni vengono generate immediatamente da BeginRead. Gli errori che si verificano durante una richiesta di lettura asincrona, ad esempio un errore del disco durante la richiesta di I/O, si verificano nel thread del pool di thread e generano eccezioni quando si chiama EndRead.
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per