TaskSignal

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

注意:此功能在 Web Workers 中可用。

TaskSignal 接口是 优先级任务调度 API 的一部分,它表示一个信号对象,允许您通过 TaskController 对象与优先级任务进行通信,并中止该任务或更改其 优先级(如果需要)。

此类型的对象被创建并与 TaskController 相关联。信号的初始优先级可以通过在 TaskController() 构造函数中将其指定为参数来设置(默认值为 "user-visible")。可以通过在控制器上调用 TaskController.setPriority() 来更改优先级。

该信号可以作为 options.signal 参数传递给 Scheduler.postTask(),之后可以使用其关联的控制器来中止任务。如果 任务优先级是可变的,则还可以使用该控制器来更改任务的优先级。不需要更改优先级的可中止任务,可以改为将 AbortSignal 指定为 options.signal 参数。

EventTarget AbortSignal TaskSignal

实例属性

TaskSignal 接口还继承了其父接口 AbortSignal 的属性。

TaskSignal.priority 只读

返回信号的优先级。

静态方法

TaskSignal 接口继承了其父接口 AbortSignal 的方法。

TaskSignal.any()

返回一个 TaskSignal,当给定的任何中止信号中止时,它也会中止。

实例方法

TaskSignal 接口继承了其父接口 AbortSignal 的方法。

事件

使用 addEventListener() 监听这些事件,或通过将事件监听器分配给此接口的 oneventname 属性。

prioritychange

当优先级更改时触发。这是通过调用关联控制器上的 TaskController.setPriority() 来触发的。

示例

关于 TaskSignal 如何创建以及如何用于优先排序和中止任务的示例可以在这里找到

规范

规范
优先任务调度
# tasksignal

浏览器兼容性