This feature is not Baseline because it does not work in some of the most widely-used browsers.
Note: This feature is available in Web Workers.
The TaskSignal interface of the Prioritized Task Scheduling API represents a signal object that allows you to communicate with a prioritized task, and abort it or change the priority (if required) via a TaskController object.
An object of this type is created, and associated with, a TaskController. The initial priority of the signal may be set by specifying it as an argument to the TaskController() constructor (by default it is "user-visible"). The priority can be changed by calling TaskController.setPriority() on the controller.
The signal may be passed as the options.signal argument in Scheduler.postTask(), after which it's associated controller can be used to abort the task. If the task priority is mutable, the controller can also be used to change the task's priority. Abortable tasks that do not need the priority to change may instead specify an AbortSignal as the options.signal argument.
The TaskSignal interface also inherits properties from its parent interface, AbortSignal.
TaskSignal.priority Read only
Returns the priority of the signal.
The TaskSignal interface inherits methods from its parent interface, AbortSignal.
TaskSignal.any()Returns an TaskSignal that aborts when any of the given abort signals abort.
The TaskSignal interface inherits methods from its parent interface, AbortSignal.
Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface.
prioritychangeFired when the priority is changed. This is triggered by calling TaskController.setPriority() on the associated controller.
Examples for how the TaskSignal is created and used for prioritizing and aborting tasks can be found here:
TaskController > ExamplesTaskSignal: prioritychange event > Examples| Specification |
|---|
| Prioritized Task Scheduling> # tasksignal> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
TaskSignal |
94 | 94 | 142 | 80 | No | 94 | 142 | 66 | No | 17.0 | 94 | No |
any_static |
116 | 116 | 142 | 102 | No | 116 | 142 | 78 | No | 24.0 | 116 | No |
priority |
94 | 94 | 142 | 80 | No | 94 | 142 | 66 | No | 17.0 | 94 | No |
prioritychange_event |
94 | 94 | 142 | 80 | No | 94 | 142 | 66 | No | 17.0 | 94 | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/TaskSignal