// Some of our platforms are quite slow. Use very large time values to
// try to avoid raciness.
const burnTimeMS = 5000;
const intervalTimeMS = 10000;
// The overall interval should include our callback "burn time". So we
// expect the delay to be the remaining time.
const expectedDelayMS = intervalTimeMS - burnTimeMS;
// Allow some margin for error because of slow test platforms.
const allowedMarginMS = burnTimeMS / 2;
let id;
let lastEndTime;
function interval()
{
let start = performance.now();
if (lastEndTime !== undefined) {
let delta = start - lastEndTime;
ok(delta <= expectedDelayMS + allowedMarginMS, 'interval should not fire too late');
ok(delta >= expectedDelayMS - allowedMarginMS, 'interval should not fire too early');
clearInterval(id);
SimpleTest.finish();
return;
}
while((performance.now() - start) < burnTimeMS);
lastEndTime = performance.now();
}
id = setInterval(interval, intervalTimeMS);
</script>
</body>
</html>
Messung V0.5
¤ Dauer der Verarbeitung: 0.18 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.