TaskSignal

Limited availability

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

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.

EventTarget AbortSignal TaskSignal

Instance properties

The TaskSignal interface also inherits properties from its parent interface, AbortSignal.

TaskSignal.priority Read only

Returns the priority of the signal.

Static methods

The TaskSignal interface inherits methods from its parent interface, AbortSignal.

TaskSignal.any() Experimental

Returns an TaskSignal that aborts when any of the given abort signals abort.

Instance methods

The TaskSignal interface inherits methods from its parent interface, AbortSignal.

Events

Listen to these events using addEventListener() or by assigning an event listener to the oneventname property of this interface.

prioritychange

Fired when the priority is changed. This is triggered by calling TaskController.setPriority() on the associated controller.

Examples

Examples for how the TaskSignal is created and used for prioritizing and aborting tasks can be found here:

Specifications

Specification
Prioritized Task Scheduling
# tasksignal

Browser compatibility

BCD tables only load in the browser