Sprache

IWritableByteChannel.Write(ByteBuffer) Methode

Definition

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

[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

Parameter

src
ByteBuffer

Der Puffer, aus dem Bytes abgerufen werden sollen

Gibt zurück

Die Anzahl der geschriebenen Bytes, möglicherweise Null

Attribute

Ausnahmen

wenn der Kanal nicht zum Schreiben geöffnet wurde.

wenn der Kanal bereits geschlossen wurde.

wenn ein anderer Thread den Kanal während des Schreibvorgangs schließt.

wenn ein anderer Thread den aufrufenden Thread während des Schreibvorgangs unterbricht.

Eine weitere E/A-Ausnahme tritt auf, Details befinden sich in der Nachricht.

Hinweise

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

Es wird versucht, bis zu r Bytes in den Kanal zu schreiben, wobei r die Anzahl der im Puffer verbleibenden Bytes ist, src.remaining()d. h. zum Zeitpunkt, in dem diese Methode aufgerufen wird.

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 des Aufrufs dieser Methode ist; der Index des letzten geschriebenen Bytes p +  n - 1. Wenn die Position des Puffers zurückgegeben wird, ist dies gleich p +  n; ihr Grenzwert wird nicht geändert.

Sofern nicht anders angegeben, wird ein Schreibvorgang erst nach dem Schreiben aller angeforderten Bytes zurückgegeben. Einige Arten von Kanälen können je nach Status nur einige der Bytes oder gar keine schreiben. Ein Socketkanal im nicht blockierenden Modus kann z. B. nicht mehr Bytes schreiben, als im Ausgabepuffer des Sockets frei sind.

Diese Methode kann jederzeit aufgerufen werden. Wenn jedoch bereits ein anderer Thread einen Schreibvorgang für diesen Kanal initiiert hat, wird ein Aufruf dieser Methode blockiert, bis der erste Vorgang abgeschlossen ist.

Java Dokumentation für java.nio.channels.WritableByteChannel.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: