StreamReader.ReadBlockAsync Méthode

Définition

Surcharges

ReadBlockAsync(Memory<Char>, CancellationToken)

Lit de façon asynchrone les caractères à partir du flux actuel et écrit les données dans une mémoire tampon.

ReadBlockAsync(Char[], Int32, Int32)

Lit un nombre maximal spécifié de caractères dans le flux actuel de manière asynchrone, et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

ReadBlockAsync(Memory<Char>, CancellationToken)

Lit de façon asynchrone les caractères à partir du flux actuel et écrit les données dans une mémoire tampon.

public override System.Threading.Tasks.ValueTask<int> ReadBlockAsync (Memory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadBlockAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadBlockAsync (buffer As Memory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Paramètres

buffer
Memory<Char>

Quand cette méthode retourne un résultat, contient le bloc mémoire spécifié de caractères remplacés par les caractères lus dans la source actuelle.

cancellationToken
CancellationToken

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

Retours

Valeur de tâche qui représente l'opération de lecture asynchrone. La valeur du paramètre de type de la tâche de valeur contient le nombre total de caractères lus dans la mémoire tampon. La valeur du résultat peut être inférieure au nombre de caractères demandés si le nombre de caractères actuellement disponibles est inférieur au nombre demandé, ou elle peut avoir la valeur 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.

S’applique à

ReadBlockAsync(Char[], Int32, Int32)

Lit un nombre maximal spécifié de caractères dans le flux actuel de manière asynchrone, et écrit les données dans une mémoire tampon, en commençant à l'index spécifié.

public:
 override System::Threading::Tasks::Task<int> ^ ReadBlockAsync(cli::array <char> ^ buffer, int index, int count);
public override System.Threading.Tasks.Task<int> ReadBlockAsync (char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task<int> ReadBlockAsync (char[] buffer, int index, int count);
override this.ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadBlockAsync (buffer As Char(), index As Integer, count As Integer) As Task(Of Integer)

Paramètres

buffer
Char[]

Quand cette méthode est retournée, contient le tableau de caractères spécifié dont les valeurs comprises entre index et (index + count - 1) sont remplacées par les caractères lus dans la source actuelle.

index
Int32

Position dans buffer à partir de laquelle commencer l'écriture.

count
Int32

Nombre maximal de caractères à lire. Si la fin du flux est atteinte avant que le nombre de caractères spécifié soit écrit dans la mémoire tampon, la méthode se termine.

Retours

Tâche qui représente l'opération de lecture asynchrone. La valeur du paramètre TResult contient le nombre total de caractères lus dans la mémoire tampon. La valeur du résultat peut être inférieure au nombre de caractères demandés si le nombre de caractères actuellement disponibles est inférieur au nombre demandé, ou elle peut avoir la valeur 0 (zéro) si la fin du flux a été atteinte.

Attributs

Exceptions

buffer a la valeur null.

index ou count est un nombre négatif.

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

Le flux a été supprimé.

Le lecteur est actuellement utilisé par une opération de lecture antérieure.

Remarques

La tâche ne se termine pas tant que le nombre de caractères spécifié par le count paramètre n’est pas lu ou que la fin du flux n’a pas été atteinte.

Cette méthode stocke dans la tâche toutes les exceptions de non-utilisation que le é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 manière synchrone. Pour les exceptions stockées, consultez les exceptions levées par ReadBlock(Char[], Int32, Int32).

S’applique à