BufferedStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) Méthode

Définition

Écrit de façon asynchrone une séquence d’octets dans le flux actuel, avance la position actuelle dans ce flux par le nombre d’octets écrits et surveille les demandes d’annulation.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync(byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

Paramètres

buffer
Byte[]

Mémoire tampon à partir de laquelle écrire des données.

offset
Int32

Décalage d’octet de base zéro dans buffer lequel commencer la copie d’octets dans le flux.

count
Int32

Nombre maximal d’octets à écrire.

cancellationToken
CancellationToken

Jeton à surveiller pour les demandes d’annulation.

Retours

Tâche qui représente l’opération d’écriture asynchrone.

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 l’écriture.

Le flux a été supprimé.

Le flux est actuellement utilisé par une opération d’écriture 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 Write(Byte[], Int32, Int32).

S’applique à