Spec-Zone.ru › Web APIs

PressureObserver: observe() метод

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает в некоторых из самых широко используемых браузеров.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Экспериментально: Это экспериментальная технология
Перед использованием в производстве тщательно проверьте таблицу совместимости с браузерами.

Примечание: Эта функция доступна в Web Workers, за исключением Service Workers.

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или всех поддерживающих браузерах.

Метод observe() интерфейса PressureObserver сообщает наблюдателю давления о начале наблюдения за изменениями давления. После вызова этого метода наблюдатель вызовет свою функцию обратного вызова, когда будет обнаружен запрос давления для указанного source.

Когда будет получен соответствующий PressureRecord, функция обратного вызова наблюдателя давления вызывается.

Синтаксис

observe(source)
observe(source, options)

Параметры

source

Строка, определяющая, какой source наблюдать. Список источников см. в PressureRecord.source, а список источников, поддерживаемых пользовательским агентом, см. в PressureObserver.knownSources.

options Необязательно

Объект для настройки наблюдения со следующими свойствами:

sampleInterval Необязательно

Число, представляющее запрашиваемый интервал выборки в миллисекундах. По умолчанию 0, что означает, что обновления будут происходить с максимальной скоростью, на которую способен система.

Возвращаемое значение

A Promise, который завершается undefined.

Исключения

NotAllowedError DOMException

Выбрасывается, если Compute Pressure API запрещен политикой compute-pressure Политики разрешений.

NotSupportedError DOMException

Выбрасывается, если параметр source не является одним из поддерживаемых источников для данного пользовательского агента.

Примеры

Вывести текущее давление

В этом примере создается 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
}

Спецификации

Спецификация
Уровень 1 вычисления давления
# the-observe-method

Совместимость с браузерами

Рабочий стол Мобильное устройство
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
observe 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/observe

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API