Sprache

IAsynchronousByteChannel.Write Methode

Definition

Überlädt

Name Beschreibung
Write(ByteBuffer)

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

Write(ByteBuffer, Object, ICompletionHandler)

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

Write(ByteBuffer)

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

[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

Parameter

src
ByteBuffer

Der Puffer, aus dem Bytes abgerufen werden sollen

Gibt zurück

Eine Zukunft, die das Ergebnis des Vorgangs darstellt

Attribute

Hinweise

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

Diese Methode initiiert einen asynchronen Schreibvorgang, um eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal zu schreiben. Die Methode verhält sich genau so wie die #write(ByteBuffer,Object,CompletionHandler) write(ByteBuffer,Object,CompletionHandler) Methode, mit der Ausnahme, dass diese Methode anstelle eines Vervollständigungshandlers ein Future darstellungsendes Ergebnis zurückgibt. Die FutureMethode 's Future#get() get gibt die Anzahl der geschriebenen Bytes zurück.

Java Dokumentation für java.nio.channels.AsynchronousByteChannel.write(java.nio.ByteBuffer).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Write(ByteBuffer, Object, ICompletionHandler)

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

[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

Parameter

src
ByteBuffer

Der Puffer, aus dem Bytes abgerufen werden sollen

attachment
Object

Das Objekt, das an den E/A-Vorgang angefügt werden soll; kann sein null

handler
ICompletionHandler

Das Vervollständigungshandlerobjekt

Attribute

Hinweise

Schreibt eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal.

Diese Methode initiiert einen asynchronen Schreibvorgang, um eine Folge von Bytes aus dem angegebenen Puffer in diesen Kanal zu schreiben. Der handler Parameter ist ein Abschlusshandler, der aufgerufen wird, wenn der Schreibvorgang abgeschlossen ist (oder ein Fehler auftritt). Das an den Abschlusshandler übergebene Ergebnis ist die Anzahl der geschriebenen Bytes.

Der Schreibvorgang kann bis zu r Bytes in den Kanal schreiben, wobei r die Anzahl der im Puffer verbleibenden Bytes ist, src.remaining() d. h. zum Zeitpunkt, zu dem der Schreibvorgang versucht wird. Wenn r 0 ist, wird der Schreibvorgang sofort mit dem Ergebnis abgeschlossen, ohne 0 einen E/A-Vorgang zu initiieren.

Angenommen, eine Bytesequenz der Länge n wird geschrieben, wobei 0 <  n <=  r. Diese Bytesequenz wird vom Puffer ab Index p übertragen, wobei p die Position des Puffers zum Zeitpunkt der Ausführung des Schreibvorgangs ist; der Index des letzten geschriebenen Bytes p +  n - 1. Nach Abschluss ist die Position des Puffers gleich p +  n; ihr Grenzwert wird nicht geändert.

Puffer sind nicht sicher für die Verwendung durch mehrere gleichzeitige Threads, daher sollten Sie darauf achten, erst nach Abschluss des Vorgangs auf den Puffer zuzugreifen.

Diese Methode kann jederzeit aufgerufen werden. Einige Kanaltypen erlauben möglicherweise nicht, dass mehrere Schreibvorgänge zu einem bestimmten Zeitpunkt ausstehen. Wenn ein Thread einen Schreibvorgang initiiert, bevor ein vorheriger Schreibvorgang abgeschlossen wurde, wird ein WritePendingException Fehler ausgelöst.

Java Dokumentation für java.nio.channels.AsynchronousByteChannel.write(java.nio.ByteBuffer, A, java.nio.channels.CompletionHandler<java.lang.Integer, ? super A>).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: