Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
PressureObserver
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell:Dies ist eineexperimentelle Technologie
Überprüfen Sie dieBrowser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Hinweis: Diese Funktion ist inWeb Workers verfügbar, mit Ausnahme vonService Workers.
Sicherer Kontext: Diese Funktion ist nur insicheren Kontexten (HTTPS) in einigen oder allenunterstützenden Browsern verfügbar.
DiePressureObserver-Schnittstelle ist Teil derCompute Pressure API und wird verwendet, um die Druckänderungen von Systemressourcen wie der CPU zu überwachen.
In diesem Artikel
Konstruktor
PressureObserver()ExperimentellErstellt und gibt ein neues
PressureObserver-Objekt zurück.
Statische Eigenschaften
PressureObserver.knownSourcesSchreibgeschütztExperimentellGibt ein Array von
source-Werten zurück, die vom Benutzeragenten unterstützt werden.
Instanzmethoden
PressureObserver.observe()ExperimentellRuft die Callback-Funktion des PressureObserver auf, wenn ein Druckdatensatz für die angegebene
sourcebeobachtet wird.PressureObserver.unobserve()ExperimentellStoppt die Callback-Funktion des PressureObserver von der Erfassung von Druckdatensätzen von der angegebenen
source.PressureObserver.disconnect()ExperimentellStoppt die Callback-Funktion des PressureObserver von der Erfassung von Druckdatensätzen aus allen Quellen.
PressureObserver.takeRecords()ExperimentellGibt die aktuelle Liste der im PressureObserver gespeicherten Druckdatensätze zurück und leert sie dadurch.
Beispiele
>Aktuellen Druck protokollieren
Dieses Beispiel erstellt einenPressureObserver und führt Aktionen aus, sobald eine Druckänderung auftritt. Das Abtastintervall ist auf 1000 ms eingestellt, was bedeutet, dass es maximal alle Sekunde Aktualisierungen gibt.
function callback(records) { const lastRecord = records[records.length - 1]; console.log(`Current pressure ${lastRecord.state}`); if (lastRecord.state === "critical") { // disable video feeds } else if (lastRecord.state === "serious") { // disable video filter effects } else { // enable all video feeds and filter effects }}try { const observer = new PressureObserver(callback); await observer.observe("cpu", { sampleInterval: 1000, // 1000ms });} catch (error) { // report error setting up the observer}Spezifikationen
| Specification |
|---|
| Compute Pressure Level 1> # the-pressureobserver-object> |