CryptoStream.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(Byte[], Int32, Int32, CancellationToken) |
Legge una sequenza di byte dal flusso corrente in modo asincrono e passa alla posizione successiva all'interno del flusso corrente in base al numero di byte letti e monitora le richieste di annullamento. |
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. |
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Origine:
- CryptoStream.cs
- Origine:
- CryptoStream.cs
- Origine:
- CryptoStream.cs
Legge una sequenza di byte dal flusso corrente in modo asincrono e passa alla posizione successiva all'interno del flusso corrente 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> ^ buffer, 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>
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
Offset dei byte in buffer
da cui iniziare la scrittura dei dati dal flusso.
- 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. Il valore del parametro TResult
dell'oggetto attività contiene il numero totale di byte letti nel buffer. Il 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.
Eccezioni
buffer
è null
.
offset
o count
è negativo.
La somma di offset
e count
è maggiore della lunghezza del buffer.
Il flusso non supporta la lettura.
Il flusso è stato eliminato.
Il flusso è attualmente usato da un'operazione di lettura precedente.
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 quanti byte sono stati richiesti. Per altre informazioni, vedere Letture parziali e zero byte in DeflateStream, GZipStream e CryptoStream.
È necessario prefazione della chiamata a ReadAsync con l'operatore await
(C#) o Await
(Visual Basic) per sospendere l'esecuzione del metodo fino al completamento dell'attività. Per altre informazioni, vedere Programmazione asincrona (C#) o Programmazione asincrona con Async e Await (Visual Basic).
Se l'operazione viene annullata prima del completamento, l'attività restituita contiene il Canceled valore della Status proprietà.
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).
Vedi anche
Si applica a
ReadAsync(Memory<Byte>, CancellationToken)
- Origine:
- CryptoStream.cs
- Origine:
- CryptoStream.cs
- Origine:
- CryptoStream.cs
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.
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. Il valore della proprietà Result contiene 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.
Eccezioni
L'oggetto CryptoStreamMode associato all'oggetto corrente CryptoStream non corrisponde al flusso sottostante. Ad esempio, questa eccezione viene generata quando si usa Read con un flusso sottostante che viene scritto solo.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
A partire da .NET 6, questo metodo potrebbe non leggere quanti byte sono stati richiesti. Per altre informazioni, vedere Letture parziali e zero byte in DeflateStream, GZipStream e CryptoStream.