IAsynchronousByteChannel.Write 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
| Nom | Description |
|---|---|
| Write(ByteBuffer) |
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée. |
| Write(ByteBuffer, Object, ICompletionHandler) |
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée. |
Write(ByteBuffer)
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
[Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)Ljava/util/concurrent/Future;", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IAsynchronousByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)]
public Java.Util.Concurrent.IFuture? Write(Java.Nio.ByteBuffer? src);
[<Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)Ljava/util/concurrent/Future;", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IAsynchronousByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)>]
abstract member Write : Java.Nio.ByteBuffer -> Java.Util.Concurrent.IFuture
Paramètres
- src
- ByteBuffer
Mémoire tampon à partir de laquelle les octets doivent être récupérés
Retours
Un avenir représentant le résultat de l’opération
- Attributs
Remarques
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
Cette méthode lance une opération d’écriture asynchrone pour écrire une séquence d’octets dans ce canal à partir de la mémoire tampon donnée. La méthode se comporte exactement de la même manière que la #write(ByteBuffer,Object,CompletionHandler) write(ByteBuffer,Object,CompletionHandler) méthode, sauf qu’au lieu de spécifier un gestionnaire d’achèvement, cette méthode retourne un Future résultat représentant le résultat en attente. La Futureméthode 's Future#get() get retourne le nombre d’octets écrits.
Java documentation pour java.nio.channels.AsynchronousByteChannel.write(java.nio.ByteBuffer).
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.
S’applique à
Write(ByteBuffer, Object, ICompletionHandler)
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
[Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;Ljava/lang/Object;Ljava/nio/channels/CompletionHandler;)V", "GetWrite_Ljava_nio_ByteBuffer_Ljava_lang_Object_Ljava_nio_channels_CompletionHandler_Handler:Java.Nio.Channels.IAsynchronousByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "A" })]
public void Write(Java.Nio.ByteBuffer? src, Java.Lang.Object? attachment, Java.Nio.Channels.ICompletionHandler? handler);
[<Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;Ljava/lang/Object;Ljava/nio/channels/CompletionHandler;)V", "GetWrite_Ljava_nio_ByteBuffer_Ljava_lang_Object_Ljava_nio_channels_CompletionHandler_Handler:Java.Nio.Channels.IAsynchronousByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "A" })>]
abstract member Write : Java.Nio.ByteBuffer * Java.Lang.Object * Java.Nio.Channels.ICompletionHandler -> unit
Paramètres
- src
- ByteBuffer
Mémoire tampon à partir de laquelle les octets doivent être récupérés
- attachment
- Object
Objet à attacher à l’opération d’E/S ; peut être null
- handler
- ICompletionHandler
Objet du gestionnaire d’achèvement
- Attributs
Remarques
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
Cette méthode lance une opération d’écriture asynchrone pour écrire une séquence d’octets dans ce canal à partir de la mémoire tampon donnée. Le handler paramètre est un gestionnaire d’achèvement appelé lorsque l’opération d’écriture se termine (ou échoue). Le résultat passé au gestionnaire d’achèvement est le nombre d’octets écrits.
L’opération d’écriture peut écrire jusqu’à r octets dans le canal, où r correspond au nombre d’octets restants dans la mémoire tampon, autrement dit, src.remaining() au moment où l’écriture est tentée. Lorsque r est 0, l’opération d’écriture se termine immédiatement avec le résultat de 0 sans lancer d’opération d’E/S.
Supposons qu’une séquence d’octets de longueur n soit écrite, où 0 ;< ; n ;<= ; r. Cette séquence d’octets est transférée à partir de la mémoire tampon à partir de l’index p, où p est la position de la mémoire tampon au moment où l’écriture est effectuée ; l’index du dernier octet écrit sera p ;+ ; n ;- ;1. Une fois la position de la mémoire tampon terminée, la position de la mémoire tampon est égale à p ;+ ; n ; sa limite n’aura pas changé.
Les mémoires tampons ne sont pas sécurisées pour être utilisées par plusieurs threads simultanés. Vous devez donc veiller à ne pas accéder à la mémoire tampon tant que l’opération n’est pas terminée.
Cette méthode peut être appelée à tout moment. Certains types de canaux peuvent ne pas autoriser plusieurs écritures à être en attente à un moment donné. Si un thread lance une opération d’écriture avant la fin d’une opération d’écriture précédente, une WritePendingException opération sera levée.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.