A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.cdn.mozilla.net/de/docs/Web/API/ReadableByteStreamController below:

ReadableByteStreamController - Web-APIs | MDN

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

Das ReadableByteStreamController-Interface der Streams-API stellt einen Controller für einen lesbaren Byte-Stream dar. Es ermöglicht die Kontrolle des Zustands und der internen Warteschlange eines ReadableStream mit einer zugrunde liegenden Bytequelle und ermöglicht einen effizienten Zero-Copy-Datentransfer von der zugrunde liegenden Quelle zu einem Verbraucher, wenn die interne Warteschlange des Streams leer ist.

Eine Instanz dieses Controller-Typs wird erstellt, wenn ein underlyingSource-Objekt mit der Eigenschaft type="bytes" als Argument an den ReadableStream()-Konstruktor übergeben wird. Das underlyingSource-Objekt kann auch die Callback-Funktionen start() und pull() definieren. Diese werden mit dem Controller als Parameter aufgerufen, um die zugrunde liegende Quelle einzurichten und bei Bedarf Daten anzufordern.

Die zugrunde liegende Quelle verwendet den Controller, um Daten über dessen byobRequest-Eigenschaft oder die Methode enqueue() an den Stream zu übermitteln. byobRequest ist ein ReadableStreamBYOBRequest-Objekt, das eine ausstehende Anfrage von einem Verbraucher darstellt, um einen Zero-Copy-Datentransfer direkt an einen Verbraucher durchzuführen. byobRequest muss verwendet werden, um Daten zu kopieren, falls es existiert (verwenden Sie in diesem Fall nicht enqueue())! Wenn die zugrunde liegende Quelle Daten an den Stream übergeben muss und byobRequest null ist, kann die Quelle enqueue() aufrufen, um die Daten zur internen Warteschlange des Streams hinzuzufügen.

Beachten Sie, dass byobRequest nur im "BYOB-Modus" erstellt wird, wenn eine Anfrage von einem Leser vorliegt und die interne Warteschlange des Streams leer ist. Der "BYOB-Modus" wird aktiviert, wenn ein ReadableStreamBYOBReader verwendet wird (typischerweise konstruiert durch den Aufruf von ReadableStream.getReader() mit dem Argument { mode: 'byob' }). Er wird auch aktiviert, wenn ein Standardleser verwendet wird und autoAllocateChunkSize im ReadableStream()-Konstruktor angegeben ist.

Eine zugrunde liegende Bytequelle kann auch den Controller verwenden, um den Stream mittels close() zu schließen, wenn alle Daten gesendet wurden, und um Fehler von der zugrunde liegenden Quelle mit error() zu melden. Die desiredSize-Eigenschaft des Controllers wird verwendet, um "Backpressure" anzuwenden, indem sie die zugrunde liegende Quelle über die Größe der internen Warteschlange informiert (kleine Werte deuten darauf hin, dass die Warteschlange sich füllt, was der zugrunde liegenden Quelle das Pausieren oder Drosseln des Zuflusses nahelegt).

Beachten Sie, dass der Controller zwar hauptsächlich von der zugrunde liegenden Bytequelle verwendet wird, aber es keinen Grund gibt, warum er nicht von anderen Teilen des Systems verwendet werden könnte, um dem Stream Signale zu geben.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4