// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
'use strict';
onconnect = function(e) {
const port = e.ports[0];
function pressureChange(data) {
port.postMessage({type: 'data', update: data[0].toJSON()});
}
const observer = new PressureObserver(pressureChange);
port.onmessage = async (e) => {
if (e.data.command == 'start') {
try {
await observer.observe('cpu');
port.postMessage({result: 'success'});
} catch (error) {
port.postMessage({result: 'fail'});
}
}
}
port.start();
}