GZipStream.ReadAsync Méthode

Définition

Surcharges

ReadAsync(Memory<Byte>, CancellationToken)

Lit de façon asynchrone une séquence d’octets du flux GZip actuel dans une région de mémoire d’octets, avance la position dans le flux GZip du nombre d’octets lus et supervise les demandes d’annulation.

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

Lit de façon asynchrone une séquence d’octets du flux GZip actuel dans un tableau d’octets, avance la position dans le flux GZip du nombre d’octets lus et supervise les demandes d’annulation.

ReadAsync(Memory<Byte>, CancellationToken)

Source:
GZipStream.cs
Source:
GZipStream.cs
Source:
GZipStream.cs

Lit de façon asynchrone une séquence d’octets du flux GZip actuel dans une région de mémoire d’octets, avance la position dans le flux GZip du nombre d’octets lus et supervise les demandes d’annulation.

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)

Paramètres

buffer
Memory<Byte>

Région de la mémoire dans laquelle les données doivent être écrites.

cancellationToken
CancellationToken

Jeton pour surveiller les requêtes d'annulation. La valeur par défaut est None.

Retours

Tâche qui représente l’opération de lecture asynchrone, qui wrappe le nombre total d’octets lus dans la mémoire tampon. La valeur de résultat peut être inférieure au nombre d’octets alloués dans la mémoire tampon si ce nombre d’octets n’est pas actuellement disponible, ou égale à 0 (zéro) si la fin du flux GZip a été atteinte.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

Remarques

Important

À compter de .NET 6, cette méthode peut ne pas lire autant d’octets que demandé. Pour plus d’informations, consultez Lectures partielles et zéro octet dans DeflateStream, GZipStream et CryptoStream.

La ReadAsync méthode vous permet d’effectuer des opérations d’E/S nécessitant beaucoup de ressources sans bloquer le thread main. Cette considération des performances est particulièrement importante dans les applications de bureau où une opération de flux de temps peut bloquer le thread d’interface utilisateur et faire apparaître l’application comme si elle ne fonctionnait pas. Les méthodes asynchrones sont utilisées conjointement avec les async mots clés et await dans Visual Basic et C#.

Utilisez la CanRead propriété pour déterminer si le instance actuel prend en charge la lecture.

Si l’opération est annulée avant qu’elle ne se termine, la tâche retournée contient la TaskStatus.Canceled valeur de la Task.Status propriété.

S’applique à

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

Source:
GZipStream.cs
Source:
GZipStream.cs
Source:
GZipStream.cs

Lit de façon asynchrone une séquence d’octets du flux GZip actuel dans un tableau d’octets, avance la position dans le flux GZip du nombre d’octets lus et supervise les demandes d’annulation.

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)

Paramètres

arraybuffer
Byte[]

Mémoire tampon où écrire les données.

offset
Int32

Décalage d’octet auquel commencer l’écriture des données à partir du flux GZip.

count
Int32

Nombre maximal d'octets à lire.

cancellationToken
CancellationToken

Jeton pour surveiller les requêtes d'annulation. La valeur par défaut est None.

Retours

Tâche qui représente l’opération de lecture asynchrone, qui encapsule le nombre total d’octets lus. La valeur de résultat peut être inférieure au nombre d’octets demandés si le nombre d’octets actuellement disponibles est inférieur au nombre demandé, ou égale à 0 (zéro) si la fin du flux GZip a été atteinte.

Exceptions

Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.

Remarques

Important

À compter de .NET 6, cette méthode peut ne pas lire autant d’octets que demandé. Pour plus d’informations, consultez Lectures partielles et zéro octet dans DeflateStream, GZipStream et CryptoStream.

La ReadAsync méthode vous permet d’effectuer des opérations d’E/S nécessitant beaucoup de ressources sans bloquer le thread main. Cette considération des performances est particulièrement importante dans les applications de bureau où une opération de flux de temps peut bloquer le thread d’interface utilisateur et faire apparaître l’application comme si elle ne fonctionnait pas. Les méthodes asynchrones sont utilisées conjointement avec les async mots clés et await dans Visual Basic et C#.

Utilisez la CanRead propriété pour déterminer si le instance actuel prend en charge la lecture.

Si l’opération est annulée avant qu’elle ne se termine, la tâche retournée contient la TaskStatus.Canceled valeur de la Task.Status propriété.

Cette méthode stocke dans la tâche toutes les exceptions de non-utilisation que l’équivalent synchrone de la méthode peut lever. Si une exception est stockée dans la tâche retournée, cette exception sera levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de manière synchrone. Pour connaître les exceptions stockées, consultez les exceptions levées par Read(Byte[], Int32, Int32).

S’applique à