scheduler
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The global read-only scheduler
property is the entry point for using the Prioritized Task Scheduling API.
It is implemented by both Window
and WorkerGlobalScope
.
The existence of the property indicates that the API is supported in the current context, and can be accessed using this.scheduler
.
The object has a single instance method Scheduler.postTask()
that is used to post prioritized tasks for scheduling.
Value
A Scheduler
.
Examples
The code below shows a very basic use of the property and its associated interface. It demonstrates how to check that the property exists and then posts a task that returns a promise.
// Check if the prioritized task API is supported
if ('scheduler' in this) {
// Callback function - "the task"
function myTask() { return 'Task 1: user-visible'; }
// Post task with default priority: 'user-visible' (no other options)
// When the task resolves, Promise.then() logs the result.
scheduler.postTask( myTask )
// Handle resolved value
.then( (taskResult) => { console.log(`${taskResult}`); })
// Handle error or abort
.catch( (error) => { console.log(`Error: ${error}`); });
}
else {
console.log('Feature: NOT Supported');
}
For comprehensive example code showing to use the API see Prioritized Task Scheduling API > Examples.
Specifications
Specification |
---|
Prioritized Task Scheduling # dom-windoworworkerglobalscope-scheduler |
Browser compatibility
BCD tables only load in the browser