Partager via


BufferedStream.ReadAsync Méthode

Définition

Surcharges

Nom Description
ReadAsync(Memory<Byte>, CancellationToken)

Lit de façon asynchrone une séquence d’octets à partir du flux mis en mémoire tampon actuelle et avance la position dans le flux mis en mémoire tampon par le nombre d’octets lus.

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

Lit de façon asynchrone une séquence d’octets à partir du flux actuel, avance la position dans le flux en fonction du nombre d’octets lus et surveille les demandes d’annulation.

ReadAsync(Memory<Byte>, CancellationToken)

Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs

Lit de façon asynchrone une séquence d’octets à partir du flux mis en mémoire tampon actuelle et avance la position dans le flux mis en mémoire tampon par le nombre d’octets lus.

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 mémoire dans laquelle écrire les données.

cancellationToken
CancellationToken

Jeton à surveiller pour les demandes d’annulation. La valeur par défaut est None.

Retours

Tâche qui représente l’opération de lecture asynchrone. La valeur de sa Result propriété contient 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 il peut être égal à 0 (zéro) si la fin du flux a été atteinte.

Exceptions

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

Remarques

La ReadAsync méthode vous permet d’effectuer des opérations d’E/S gourmandes en ressources sans bloquer le thread principal. Cette considération en matière de performances est particulièrement importante dans une application Windows 8.x Store ou une application de bureau où une opération de flux de temps peut bloquer le thread d’interface utilisateur et faire apparaître votre application comme si elle ne fonctionne pas. Les méthodes asynchrones sont utilisées conjointement avec les async mots clés et await Visual Basic et C#.

Utilisez la CanRead propriété pour déterminer si l’instance actuelle prend en charge la lecture.

Si l’opération est annulée avant sa fin, la tâche retournée contient la TaskStatus.Canceled valeur de la Status propriété.

S’applique à

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

Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs
Source:
BufferedStream.cs

Lit de façon asynchrone une séquence d’octets à partir du flux actuel, avance la position dans le flux en fonction du nombre d’octets lus et surveille les demandes d’annulation.

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)

Paramètres

buffer
Byte[]

Mémoire tampon dans laquelle écrire les données.

offset
Int32

Décalage d’octet dans buffer lequel commencer l’écriture de données à partir du flux.

count
Int32

Nombre maximal d’octets à lire.

cancellationToken
CancellationToken

Jeton à surveiller pour les demandes d’annulation.

Retours

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

Exceptions

buffer a la valeur null.

offset ou count est négatif.

La somme et offsetcount est supérieure à la longueur de la mémoire tampon.

Le flux ne prend pas en charge la lecture.

Le flux a été supprimé.

Le flux est actuellement utilisé par une opération de lecture précédente.

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

Remarques

Vous pouvez créer un jeton d’annulation en créant une instance de la CancellationTokenSource classe et en transmettant la Token propriété en tant que cancellationToken paramètre.

Cette méthode stocke dans la tâche toutes les exceptions 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 est levée lorsque la tâche est attendue. Les exceptions d’utilisation, telles que ArgumentException, sont toujours levées de façon synchrone. Pour les exceptions stockées, consultez les exceptions levées par Read(Byte[], Int32, Int32).

S’applique à