Files
react-native-devtools-frontend/node_modules/workerpool/examples/browser/statistics.html
T
Peter Marshall 0b95ea162f Update Mocha to 8.0.1
Breaking changes here https://github.com/mochajs/mocha/releases/tag/v8.0.0
seem fine.

DISABLE_THIRD_PARTY_CHECK=Update Mocha

Bug: chromium:1101784
Change-Id: Idc75c94f9a923e2b0ca13d1d1331540cb1c5d3a3
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2279830
Reviewed-by: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
2020-07-03 09:50:38 +00:00

77 lines
1.6 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Worker pool statistics</title>
<style>
body {
width: 600px;
font: 11pt arial;
}
</style>
<script src="../../dist/workerpool.js"></script>
</head>
<body>
<p>
Create some tasks and watch the statistics
</p>
<input type="button" id="sleep2" value="Create a sleep task (2 seconds)">
<input type="button" id="sleep5" value="Create a sleep task (5 seconds)">
<pre>
<code id="stats"></code>
</pre>
<script>
var pool = workerpool.pool({maxWorkers: 4});
// show current stats of the workerpool on screen
function updateStats () {
document.getElementById('stats').innerHTML = JSON.stringify(pool.stats(), null, 2);
}
setInterval(updateStats, 200);
/**
* A dumb task that waits for some time before resolving
* @param {number} duration duration in milliseconds
* @return {Promise}
*/
function sleep (duration) {
return new Promise (function (resolve, reject) {
setTimeout(resolve, duration)
})
}
document.getElementById('sleep2').onclick = function () {
console.log('start sleep(2000)');
pool.exec(sleep, [2000])
.then(function () {
console.log('finished sleep(2000)');
})
.catch(function (err) {
console.error(err);
});
updateStats();
};
document.getElementById('sleep5').onclick = function () {
console.log('start sleep(5000)');
pool.exec(sleep, [5000])
.then(function () {
console.log('finished sleep(5000)');
})
.catch(function (err) {
console.error(err);
});
updateStats();
};
</script>
</body>
</html>