PressureObserver
Ограниченная доступность
Эта функция не является базовой, так как она не работает в некоторых из наиболее широко используемых браузеров.
Экспериментально: Это экспериментальная технология .
Перед использованием в продакшене внимательно проверьте таблицу совместимости с браузерами.
Примечание: Эта функция доступна в Веб-воркерах, за исключением Сервис-воркеров.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.
Интерфейс PressureObserver является частью API вычисления давления и используется для наблюдения за изменениями давления системных ресурсов, таких как процессор.
Конструктор
-
PressureObserver()Экспериментально -
Создает и возвращает новый объект
PressureObserver.
Статические свойства
-
PressureObserver.knownSourcesТолько для чтения Экспериментально -
Возвращает массив значений
source, поддерживаемых пользовательским агентом.
Методы экземпляра
-
PressureObserver.observe()Экспериментально -
Вызывает обратный вызов наблюдателя давления, когда наблюдается запись о давлении для указанного
source. -
PressureObserver.unobserve()Экспериментально -
Останавливает обратный вызов наблюдателя давления от получения записей о давлении от указанного
source. -
PressureObserver.disconnect()Экспериментально -
Останавливает обратный вызов наблюдателя давления от получения записей о давлении от всех источников.
-
PressureObserver.takeRecords()Экспериментально -
Возвращает текущий список записей о давлении, хранящихся в наблюдателе давления, опустошая его.
Примеры
Вывести текущее давление
В этом примере создается PressureObserver и выполняется действие всякий раз, когда происходит изменение давления. Интервал выборки установлен в 1000 мс, что означает, что обновления будут происходить не чаще, чем раз в секунду.
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
}
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
PressureObserver |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
PressureObserver |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
disconnect |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
knownSources_static |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
observe |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
takeRecords |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
unobserve |
125 | 125 | Нет | 111 | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PressureObserver