1# @ohos.WorkSchedulerExtensionAbility (延迟任务调度回调) 2 3本模块提供延迟任务回调能力。开发者可重写模块接口,在延迟任务触发时,系统可通过本模块接口回调应用,在回调里处理任务逻辑。 4 5> **说明:** 6> 7> - 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> - 本模块接口仅可在Stage模型下使用。 10 11## 导入模块 12 13```ts 14import { WorkSchedulerExtensionAbility } from '@kit.BackgroundTasksKit'; 15``` 16 17## 属性 18 19**系统能力**:SystemCapability.ResourceSchedule.WorkScheduler 20 21| 名称 | 类型 | 可读 | 可写 | 说明 | 22| -------- | -------- | -------- | -------- | -------- | 23| context<sup>10+</sup> | [WorkSchedulerExtensionContext](js-apis-inner-application-WorkSchedulerExtensionContext.md) | 是 | 否 | WorkSchedulerExtension的上下文环境,继承自ExtensionContext。 | 24 25## WorkSchedulerExtensionAbility.onWorkStart 26 27onWorkStart(work: workScheduler.WorkInfo): void 28 29开始延迟任务调度回调。 30 31**系统能力:** SystemCapability.ResourceSchedule.WorkScheduler 32 33**参数**: 34 35| 参数名 | 类型 | 必填 | 说明 | 36| ---- | ---------------------------------------- | ---- | -------------- | 37| work | [workScheduler.WorkInfo](js-apis-resourceschedule-workScheduler.md#workinfo) | 是 | 要添加到执行队列的任务。 | 38 39**示例:** 40 41 ```ts 42 import { workScheduler } from '@kit.BackgroundTasksKit'; 43 44 export default class MyWorkSchedulerExtensionAbility extends WorkSchedulerExtensionAbility { 45 onWorkStart(workInfo: workScheduler.WorkInfo) { 46 console.log('MyWorkSchedulerExtensionAbility onWorkStart' + JSON.stringify(workInfo)); 47 } 48 } 49 ``` 50 51## WorkSchedulerExtensionAbility.onWorkStop 52 53onWorkStop(work: workScheduler.WorkInfo): void 54 55结束延迟任务调度回调。 56 57**系统能力:** SystemCapability.ResourceSchedule.WorkScheduler 58 59**参数**: 60 61| 参数名 | 类型 | 必填 | 说明 | 62| ---- | ---------------------------------------- | ---- | -------------- | 63| work | [workScheduler.WorkInfo](js-apis-resourceschedule-workScheduler.md#workinfo) | 是 | 执行队列中要结束回调的任务。 | 64 65 66**示例:** 67 68 ```ts 69 import { workScheduler } from '@kit.BackgroundTasksKit'; 70 71 export default class MyWorkSchedulerExtensionAbility extends WorkSchedulerExtensionAbility { 72 onWorkStop(workInfo: workScheduler.WorkInfo) { 73 console.log('MyWorkSchedulerExtensionAbility onWorkStop' + JSON.stringify(workInfo)); 74 } 75 } 76 ```