Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

ReadableByteStreamController: close()-Methode

Baseline 2026
Neu verfügbar

Seit März 2026 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die close()-Methode der ReadableByteStreamController-Schnittstelle schließt den zugehörigen Stream.

Dies könnte von der zugrunde liegenden Quelle aufgerufen werden, wenn ihre Datenquelle erschöpft/abgeschlossen ist.

Hinweis: Leser können immer noch alle zuvor eingereihten Chunks aus dem Stream lesen, aber sobald diese gelesen sind, wird der Stream geschlossen. Wenn jedoch eine ausstehende und teilweise geschriebene byobRequest vorhanden ist, wenn close() aufgerufen wird, wird der Stream einen Fehler aufweisen.

Syntax

js
close()

Parameter

Keine.

Rückgabewert

Keiner (undefined).

Ausnahmen

TypeError

Wird ausgelöst, wenn das Quellobjekt kein ReadableByteStreamController ist, es bereits geschlossen ist oder der Stream aus einem anderen Grund nicht lesbar ist.

Beispiele

Das Beispiel in Verwendung von lesbaren Byte-Streams > Erstellen eines lesbaren Socket-Push-Byte-Streams zeigt, wie wir den Stream möglicherweise schließen, wenn keine Daten mehr vorhanden sind.

Der relevante Code ist unten wiedergegeben. Dies hängt davon ab, dass die hypothetische readInto()-Methode 0 Bytes zurückgibt, nur wenn keine Daten mehr vorhanden sind.

js
bytesRead = socket.readInto(v.buffer, v.byteOffset, v.byteLength);
if (bytesRead === 0) {
  controller.close();
}

Nach dem Aufruf von close wird der Stream geschlossen und alle Verbraucher werden benachrichtigt. Zum Beispiel würde, wenn ein ReadableStreamBYOBReader verwendet wird, jede read()-Anfrage mit done: true aufgelöst und das Versprechen von ReadableStreamBYOBReader.closed würde ebenfalls aufgelöst.

Spezifikationen

Spezifikation
Streams
# ref-for-rbs-controller-close①

Browser-Kompatibilität

Siehe auch