RTCDataChannel: bufferedAmountLowThreshold Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Die RTCDataChannel-Eigenschaft bufferedAmountLowThreshold wird verwendet, um die Anzahl der gepufferten ausgehenden Datenbytes anzugeben, die als "niedrig" betrachtet werden. Der Standardwert ist 0. Wenn die Anzahl der gepufferten ausgehenden Bytes, wie durch die bufferedAmount-Eigenschaft angegeben, auf diesen Wert oder darunter fällt, wird ein bufferedamountlow-Ereignis ausgelöst. Dieses Ereignis kann beispielsweise verwendet werden, um Code zu implementieren, der mehr Nachrichten in die Warteschlange stellt, sobald Platz zum Puffern vorhanden ist. Listener können mit onbufferedamountlow oder addEventListener() hinzugefügt werden.

Der Benutzeragent kann den Prozess des tatsächlichen Sendens von Daten in beliebiger Weise implementieren; dies kann regelmäßig während der Ereignisschleife oder wirklich asynchron erfolgen. Wenn Nachrichten tatsächlich gesendet werden, wird dieser Wert entsprechend reduziert.

Hinweis:>bufferedamountlow-Ereignisse werden nicht ausgelöst, nachdem der Datenkanal geschlossen wurde.

Wert

Die Anzahl der ausgehenden Datenbytes in der Warteschlange, unterhalb derer der Puffer als "niedrig" betrachtet wird.

Beispiel

In diesem Codeausschnitt wird bufferedAmountLowThreshold auf 64kB gesetzt, und ein Handler für das bufferedamountlow-Ereignis wird durch Setzen der onbufferedamountlow-Eigenschaft auf eine Funktion eingerichtet, die mehr Daten in den Puffer senden sollte, indem sie send() aufruft.

js
const dc = peerConnection.createDataChannel("File Transfer");
dc.bufferedAmountLowThreshold = 65535;

dc.onbufferedamountlow = () => {
  /* use send() to queue more data to be sent */
};

Spezifikationen

Specification
WebRTC: Real-Time Communication in Browsers
# dom-rtcdatachannel-bufferedamountlowthreshold

Browser-Kompatibilität

Siehe auch