Creates an instance of MacrotaskScheduler.
The callback to be executed in the next macrotask queue.
Protected_Indicates whether the scheduler is frozen.
ProtectedallowIndicates whether the scheduler allows scheduling (scheduleCore() call) when it is already scheduled. This can be overridden in subclasses to change the default behavior.
ProtectedcallbackThe callback function to be executed by the scheduler.
ProtectedoptionsOptions for the timeout scheduler.
ProtectedshouldIndicates whether the scheduler should be scheduled on unfreeze.
ProtectedtimeoutHandle returned by setTimeout(). Value depends on the environment:
Indicates whether the scheduler is frozen.
Indicates whether the scheduler is currently scheduled.
ProtectedisIndicates whether the scheduler is currently scheduled.
Cancels the scheduled callback.
ProtectedcancelCancels the scheduled callback. If no callback is scheduled, this method does nothing.
ProtectedexecuteExecutes the callback immediately.
Freezes the scheduler, preventing it from executing the callback. If the scheduler is currently scheduled, it will be canceled and then rescheduled on unfreeze(). If the scheduler is already frozen, this method does nothing.
Schedules the callback to be executed. If the scheduler is already scheduled, it does nothing. If the scheduler is frozen, it will be scheduled on unfreeze().
ProtectedscheduleSchedules the callback to be executed after the specified delay.
If the scheduler is already scheduled, it will not reschedule it unless the restartTimer option is set to "onEveryScheduleCall".
Unfreezes the scheduler, allowing it to execute the callback again. If the scheduler was frozen with a scheduled callback, it will be rescheduled. If schedule() was called while frozen, it will be scheduled now. If the scheduler is not frozen, this method does nothing.
Protected StaticcallCalls the provided callback function.
The callback function to be executed.
Staticsingle
MacrotaskScheduler is a scheduler that executes the callback in the next macrotask queue. Uses setTimeout with a delay of 0 milliseconds.