Scheduler

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Das Scheduler-Interface der Prioritized Task Scheduling API bietet Methoden zum Planen von priorisierten Aufgaben.

Ein Scheduler kann über das globale Objekt mittels Window.scheduler oder WorkerGlobalScope.scheduler innerhalb eines Workers aufgerufen werden.

Instanzeigenschaften

Keine.

Instanzmethoden

Scheduler.postTask()

Fügt dem Scheduler eine Aufgabe als Rückruf hinzu und kann optional eine Priorität, Verzögerung und/oder ein Signal zum Abbrechen der Aufgabe angeben.

Scheduler.yield() Experimentell

Gibt die Kontrolle des Hauptthreads zurück an den Browser und gibt ein Promise zurück, das die Ausführung an der Stelle fortsetzt, an der sie unterbrochen wurde.

Beispiele

Wenn das Feature definiert ist, wird eine Instanz dieses Objekts durch die globalThis-Eigenschaft sowohl in Workers als auch im Hauptthread zurückgegeben.

Der folgende Code zeigt eine einfache Aufgabe, die mit dem Text 'Task executing' aufgelöst wird. Dieser Text wird bei Erfolg protokolliert. Der Code zeigt auch einen catch-Block, der in komplexerer Programmierung erforderlich wäre, um den Fall zu behandeln, wenn eine Aufgabe abgebrochen wird oder einen Fehler wirft.

js
if ("scheduler" in this) {
  // Post task with default priority: 'user-visible' (no other options)
  // When the task resolves, Promise.then() logs the result.
  scheduler
    .postTask(() => "Task executing")
    .then((taskResult) => console.log(`${taskResult}`)) // Log result
    .catch((error) => console.error(`Error: ${error}`)); // Log errors
}

Für umfassendere Beispielcodes siehe Prioritized Task Scheduling API > Beispiele.

Spezifikationen

Specification
Prioritized Task Scheduling
# scheduler

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Scheduler
postTask
yield
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.
See implementation notes.
User must explicitly enable this feature.