PipeStream.WriteAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Écrit de façon asynchrone une séquence d'octets dans le flux actuel, avance la position actuelle dans ce flux du nombre d'octets écrits et surveille les demandes d'annulation. |
WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Écrit de façon asynchrone un nombre spécifié d’octets d’un tableau d’octets en commençant à une position spécifiée, avance la position actuelle dans ce flux du nombre d’octets écrit et supervise les demandes d’annulation. |
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)
- Source:
- PipeStream.Unix.cs
- Source:
- PipeStream.Unix.cs
- Source:
- PipeStream.Unix.cs
Écrit de façon asynchrone une séquence d'octets dans le flux actuel, avance la position actuelle dans ce flux du nombre d'octets écrits et surveille les demandes d'annulation.
public override System.Threading.Tasks.ValueTask WriteAsync (ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask
Paramètres
- buffer
- ReadOnlyMemory<Byte>
Région de la mémoire dont sont issues les données à écrire.
- 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 d’écriture asynchrone.
Exceptions
Le flux ne prend pas en charge l’écriture.
Impossible d’accéder à un canal fermé.
Le canal est rompu.
Le canal n’a pas encore été connecté.
- ou -
Le canal est dans un état déconnecté.
- ou -
Le handle du canal n’a pas été défini. (Votre implémentation PipeStream a-t-elle appelé InitializeHandle(SafePipeHandle, Boolean, Boolean)?
Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.
Remarques
La WriteAsync méthode vous permet d’effectuer des opérations d’E/S gourmandes en ressources sans bloquer le thread main. Cette considération en matière de performances est particulièrement importante dans les applications où une opération de flux chronophage peut bloquer le thread d’interface utilisateur et faire apparaître votre 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 CanWrite propriété pour déterminer si le instance actuel prend en charge l’écriture.
Si l’opération est annulée avant sa fin, la tâche retournée contient la Canceled valeur de la Status propriété .
S’applique à
WriteAsync(Byte[], Int32, Int32, CancellationToken)
- Source:
- PipeStream.Unix.cs
- Source:
- PipeStream.Unix.cs
- Source:
- PipeStream.Unix.cs
Écrit de façon asynchrone un nombre spécifié d’octets d’un tableau d’octets en commençant à une position spécifiée, avance la position actuelle dans ce flux du nombre d’octets écrit et supervise 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 dont sont issues les données à écrire.
- offset
- Int32
Dans buffer
, décalage d'octet de base zéro à partir duquel commencer la copie des octets dans le flux.
- count
- Int32
Nombre maximal d'octets à écrire.
- 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 d’écriture asynchrone.
Exceptions
buffer
a la valeur null
.
buffer
.Longueur - offset
est inférieur à count
.
Le flux ne prend pas en charge l’écriture.
Impossible d’accéder à un canal fermé.
Le canal est rompu.
Le canal n’a pas encore été connecté.
- ou -
Le canal est dans un état déconnecté.
- ou -
Le handle du canal n’a pas été défini. (Votre implémentation PipeStream a-t-elle appelé InitializeHandle(SafePipeHandle, Boolean, Boolean)?
Le jeton d’annulation a été annulé. Cette exception est stockée dans la tâche retournée.
Remarques
La WriteAsync méthode vous permet d’effectuer des opérations d’E/S gourmandes en ressources sans bloquer le thread main. Cette considération en matière de performances est particulièrement importante dans les applications où une opération de flux chronophage peut bloquer le thread d’interface utilisateur et faire apparaître votre 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 CanWrite propriété pour déterminer si le instance actuel prend en charge l’écriture.
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é .
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 Write(Byte[], Int32, Int32).