IWritableByteChannel.Write(ByteBuffer) 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.
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
[Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)I", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IWritableByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public int Write(Java.Nio.ByteBuffer? src);
[<Android.Runtime.Register("write", "(Ljava/nio/ByteBuffer;)I", "GetWrite_Ljava_nio_ByteBuffer_Handler:Java.Nio.Channels.IWritableByteChannelInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Write : Java.Nio.ByteBuffer -> int
Paramètres
- src
- ByteBuffer
Mémoire tampon à partir de laquelle les octets doivent être récupérés
Retours
Nombre d’octets écrits, éventuellement zéro
- Attributs
Exceptions
si le canal n’a pas été ouvert pour l’écriture.
si le canal a déjà été fermé.
si un autre thread ferme le canal pendant l’écriture.
si un autre thread interrompt le thread appelant pendant l’écriture.
Une autre exception d’E/S se produit, les détails se trouvent dans le message.
Remarques
Écrit une séquence d’octets dans ce canal à partir de la mémoire tampon donnée.
Une tentative est effectuée pour é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ù cette méthode est appelée.
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ù cette méthode est appelée ; l’index du dernier octet écrit sera p ;+ ; n ;- ;1. Lors du retour, la position de la mémoire tampon est égale à p ;+ ; n ; sa limite n’aura pas changé.
Sauf indication contraire, une opération d’écriture ne retourne qu’après avoir écrit tous les octets demandés. Certains types de canaux, en fonction de leur état, peuvent écrire uniquement quelques-uns des octets ou éventuellement aucun du tout. Un canal de socket en mode non bloquant, par exemple, ne peut pas écrire plus d’octets que ce qui est libre dans la mémoire tampon de sortie du socket.
Cette méthode peut être appelée à tout moment. Si un autre thread a déjà lancé une opération d’écriture sur ce canal, toutefois, un appel de cette méthode se bloque jusqu’à ce que la première opération soit terminée.
Documentation Java pour java.nio.channels.WritableByteChannel.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.