From 1a2b8dd600d0608efbc71608dd430f4c3b106f20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=91=E4=B8=9C=E5=8B=8B=20=7C=20=E9=87=91=E6=9D=B1?= =?UTF-8?q?=E5=8B=B3=20=7C=20=EA=B9=80=EB=8F=99=ED=9B=88=20=7C=20Jin=20Don?= =?UTF-8?q?gxun?= Date: Tue, 10 Nov 2026 20:50:57 +0800 Subject: [PATCH] Use the shared monotonic clock for idle callback deadlines --- index.html | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index a756f0d..a803a2c 100644 --- a/index.html +++ b/index.html @@ -398,8 +398,8 @@

The IdleDeadline interface

"Privacy and Security" section of [[HR-TIME]]. This value is calculated by performing the following steps:

    -
  1. Let now be a {{DOMHighResTimeStamp}} representing - current high resolution time in milliseconds.
  2. +
  3. Let now be the [=coarsened shared current time=] given + [=this=]'s [=relevant settings object=]'s [=environment settings object/cross-origin isolated capability=].
  4. Let deadline be the result of calling {{IdleDeadline}}'s get deadline time algorithm.
  5. Let timeRemaining be deadline - now.
  6. @@ -466,7 +466,8 @@

    Invoke idle callbacks algorithm

    1. If the user-agent believes it should end the idle period early due to newly scheduled high-priority work, return from the algorithm. -
    2. Let now be the current time.
    3. +
    4. Let now be the [=coarsened shared current time=] given + window's [=relevant settings object=]'s [=environment settings object/cross-origin isolated capability=].
    5. If now is less than the result of calling getDeadline and the window's list of runnable idle callbacks is not empty:
        @@ -502,7 +503,8 @@

        Invoke idle callback timeout algorithm

      1. Remove callback from both window's list of idle request callbacks and the list of runnable idle callbacks.
      2. -
      3. Let now be the current time.
      4. +
      5. Let now be the [=coarsened shared current time=] given + window's [=relevant settings object=]'s [=environment settings object/cross-origin isolated capability=].
      6. Let deadlineArg be a new IdleDeadline. Set the get deadline time algorithm associated with deadlineArg to an algorithm returning now and set the timeout associated with