未验证 提交 3aa79ec5 编写于 作者: 朱天怡 提交者: Gitee

修改

Signed-off-by: N朱天怡 <zhutianyi2@huawei.com>
上级 5f913f20
...@@ -12,6 +12,8 @@ ...@@ -12,6 +12,8 @@
**表1** 短时任务主要接口 **表1** 短时任务主要接口
> **说明:** 后台任务管理错误码见[backgroundTaskManager错误码](../errorcodes/errorcode-backgroundTaskMgr.md)。
| 接口名 | 描述 | | 接口名 | 描述 |
| ---------------------------------------- | ---------------------------------------- | | ---------------------------------------- | ---------------------------------------- |
| requestSuspendDelay(reason:&nbsp;string,&nbsp;callback:&nbsp;Callback&lt;void&gt;):&nbsp;[DelaySuspendInfo](../reference/apis/js-apis-backgroundTaskManager.md#delaysuspendinfo) | 后台应用申请延迟挂起。<br/>延迟挂起时间一般情况下默认值为180000,低电量时默认值为60000。 | | requestSuspendDelay(reason:&nbsp;string,&nbsp;callback:&nbsp;Callback&lt;void&gt;):&nbsp;[DelaySuspendInfo](../reference/apis/js-apis-backgroundTaskManager.md#delaysuspendinfo) | 后台应用申请延迟挂起。<br/>延迟挂起时间一般情况下默认值为180000,低电量时默认值为60000。 |
...@@ -25,46 +27,65 @@ ...@@ -25,46 +27,65 @@
1. 申请延迟挂起 1. 申请延迟挂起
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
let myReason = 'test requestSuspendDelay'; let myReason = 'test requestSuspendDelay';
let delayInfo = backgroundTaskManager.requestSuspendDelay(myReason, () => { try {
console.info("Request suspension delay will time out."); let delayInfo = backgroundTaskManager.requestSuspendDelay(myReason, () => {
}); console.info("Request suspension delay will time out.");
})
var id = delayInfo.requestId; var id = delayInfo.requestId;
console.info("requestId is: " + id); var time = delayInfo.actualDelayTime;
console.info("The requestId is: " + id);
console.info("The actualDelayTime is: " + time);
} catch (error) {
console.error(`requestSuspendDelay failed. code is ${error.code} message is ${error.message}`);
}
``` ```
2. 获取进入挂起前的剩余时间 2. 获取进入挂起前的剩余时间
```js ```js
backgroundTaskManager.getRemainingDelayTime(id).then( res => { try {
console.log('promise => Operation getRemainingDelayTime succeeded. Data: ' + JSON.stringify(res)); backgroundTaskManager.getRemainingDelayTime(id, (error, res) => {
}).catch( err => { if(error) {
console.log('promise => Operation getRemainingDelayTime failed. Cause: ' + err.code); console.error(`callback => Operation getRemainingDelayTime failed. code is ${error.code} message is ${error.message}`);
}); } else {
console.log('callback => Operation getRemainingDelayTime succeeded. Data: ' + JSON.stringify(res));
}
})
} catch (error) {
console.error(`callback => Operation getRemainingDelayTime failed. code is ${error.code} message is ${error.message}`);
}
``` ```
3. 取消延迟挂起 3. 取消延迟挂起
```js ```js
backgroundTaskManager.cancelSuspendDelay(id); try {
backgroundTaskManager.cancelSuspendDelay(id);
} catch (error) {
console.error(`cancelSuspendDelay failed. code is ${error.code} message is ${error.message}`);
}
``` ```
### 开发实例 ### 开发实例
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
let myReason = 'test requestSuspendDelay'; let myReason = 'test requestSuspendDelay';
var delayInfo;
// 申请延迟挂起 // 申请延迟挂起
let delayInfo = backgroundTaskManager.requestSuspendDelay(myReason, () => { try {
console.info("Request suspension delay will time out."); delayInfo = backgroundTaskManager.requestSuspendDelay(myReason, () => {
}); console.info("Request suspension delay will time out.");
})
} catch (error) {
console.error(`requestSuspendDelay failed. code is ${error.code} message is ${error.message}`);
}
// 打印延迟挂起信息 // 打印延迟挂起信息
var id = delayInfo.requestId; var id = delayInfo.requestId;
...@@ -73,14 +94,24 @@ console.info("The requestId is: " + id); ...@@ -73,14 +94,24 @@ console.info("The requestId is: " + id);
console.info("The actualDelayTime is: " + time); console.info("The actualDelayTime is: " + time);
// 获取应用程序进入挂起状态前的剩余时间 // 获取应用程序进入挂起状态前的剩余时间
backgroundTaskManager.getRemainingDelayTime(id).then( res => { try {
console.log('promise => Operation getRemainingDelayTime succeeded. Data: ' + JSON.stringify(res)); backgroundTaskManager.getRemainingDelayTime(id, (error, res) => {
}).catch( err => { if(error) {
console.log('promise => Operation getRemainingDelayTime failed. Cause: ' + err.code); console.error(`callback => Operation getRemainingDelayTime failed. code is ${error.code} message is ${error.message}`);
}); } else {
console.log('callback => Operation getRemainingDelayTime succeeded. Data: ' + JSON.stringify(res));
}
})
} catch (error) {
console.error(`callback => Operation getRemainingDelayTime failed. code is ${error.code} message is ${error.message}`);
}
// 取消延迟挂起 // 取消延迟挂起
backgroundTaskManager.cancelSuspendDelay(id); try {
backgroundTaskManager.cancelSuspendDelay(id);
} catch (error) {
console.error(`cancelSuspendDelay failed. code is ${error.code} message is ${error.message}`);
}
``` ```
## 长时任务 ## 长时任务
...@@ -93,6 +124,8 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -93,6 +124,8 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
**表2** 长时任务主要接口 **表2** 长时任务主要接口
> **说明:** 后台任务管理错误码见[backgroundTaskManager错误码](../errorcodes/errorcode-backgroundTaskMgr.md)。
| 接口名 | 描述 | | 接口名 | 描述 |
| ---------------------------------------- | ---------------------------- | | ---------------------------------------- | ---------------------------- |
| startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise&lt;void&gt; | 服务启动后,向系统申请长时任务,使服务一直保持后台运行。 | | startBackgroundRunning(context: Context, bgMode: BackgroundMode, wantAgent: WantAgent): Promise&lt;void&gt; | 服务启动后,向系统申请长时任务,使服务一直保持后台运行。 |
...@@ -145,7 +178,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -145,7 +178,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
2. 申请长时任务。 2. 申请长时任务。
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.backgroundTaskManager';
import featureAbility from '@ohos.ability.featureAbility'; import featureAbility from '@ohos.ability.featureAbility';
import wantAgent from '@ohos.wantAgent'; import wantAgent from '@ohos.wantAgent';
...@@ -175,7 +208,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -175,7 +208,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
3. 停止长时任务。 3. 停止长时任务。
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.backgroundTaskManager';
import featureAbility from '@ohos.ability.featureAbility'; import featureAbility from '@ohos.ability.featureAbility';
backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext()).then(() => { backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext()).then(() => {
...@@ -211,7 +244,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -211,7 +244,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
2. 申请长时任务。 2. 申请长时任务。
```ts ```ts
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
import wantAgent from '@ohos.wantAgent'; import wantAgent from '@ohos.wantAgent';
let wantAgentInfo = { let wantAgentInfo = {
...@@ -228,25 +261,33 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -228,25 +261,33 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
// 通过wantAgent模块的getWantAgent方法获取WantAgent对象 // 通过wantAgent模块的getWantAgent方法获取WantAgent对象
wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => { wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => {
backgroundTaskManager.startBackgroundRunning(this.context, try {
backgroundTaskManager.BackgroundMode.DATA_TRANSFER, wantAgentObj).then(() => { backgroundTaskManager.startBackgroundRunning(featureAbility.getContext(),
console.info("Operation startBackgroundRunning succeeded"); backgroundTaskManager.BackgroundMode.DATA_TRANSFER, wantAgentObj).then(() => {
}).catch((err) => { console.info("Operation startBackgroundRunning succeeded");
console.error("Operation startBackgroundRunning failed Cause: " + err); }).catch((error) => {
}); console.error(`Operation startBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
});
} catch (error) {
console.error(`Operation startBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
}
}); });
``` ```
3. 停止长时任务。 3. 停止长时任务。
```ts ```ts
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
backgroundTaskManager.stopBackgroundRunning(this.context).then(() => { try {
console.info("Operation stopBackgroundRunning succeeded"); backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext()).then(() => {
}).catch((err) => { console.info("Operation stopBackgroundRunning succeeded");
console.error("Operation stopBackgroundRunning failed Cause: " + err); }).catch((err) => {
}); console.error(`Operation stopBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
});
} catch (error) {
console.error(`Operation stopBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
}
``` ```
...@@ -262,7 +303,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING ...@@ -262,7 +303,7 @@ ohos.permission.KEEP_BACKGROUND_RUNNING
当需要与后台执行的长时任务交互时(如播放音乐等)。可以采用connectAbility()方法启动并连接Service Ability。在获取到服务的代理对象后,与服务进行通信,控制长时任务的申请和取消。 当需要与后台执行的长时任务交互时(如播放音乐等)。可以采用connectAbility()方法启动并连接Service Ability。在获取到服务的代理对象后,与服务进行通信,控制长时任务的申请和取消。
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.backgroundTaskManager';
import featureAbility from '@ohos.ability.featureAbility'; import featureAbility from '@ohos.ability.featureAbility';
import wantAgent from '@ohos.wantAgent'; import wantAgent from '@ohos.wantAgent';
import rpc from "@ohos.rpc"; import rpc from "@ohos.rpc";
...@@ -371,7 +412,7 @@ Stage模型的相关信息参考[Stage模型综述](../ability/stage-brief.md) ...@@ -371,7 +412,7 @@ Stage模型的相关信息参考[Stage模型综述](../ability/stage-brief.md)
```ts ```ts
import Ability from '@ohos.application.Ability' import Ability from '@ohos.application.Ability'
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
import wantAgent from '@ohos.wantAgent'; import wantAgent from '@ohos.wantAgent';
let mContext = null; let mContext = null;
...@@ -395,21 +436,29 @@ function startContinuousTask() { ...@@ -395,21 +436,29 @@ function startContinuousTask() {
// 通过wantAgent模块的getWantAgent方法获取WantAgent对象 // 通过wantAgent模块的getWantAgent方法获取WantAgent对象
wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => { wantAgent.getWantAgent(wantAgentInfo).then((wantAgentObj) => {
backgroundTaskManager.startBackgroundRunning(mContext, try {
backgroundTaskManager.BackgroundMode.DATA_TRANSFER, wantAgentObj).then(() => { backgroundTaskManager.startBackgroundRunning(featureAbility.getContext(),
console.info("Operation startBackgroundRunning succeeded"); backgroundTaskManager.BackgroundMode.DATA_TRANSFER, wantAgentObj).then(() => {
}).catch((err) => { console.info("Operation startBackgroundRunning succeeded");
console.error("Operation startBackgroundRunning failed Cause: " + err); }).catch((error) => {
}); console.error(`Operation startBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
});
} catch (error) {
console.error(`Operation startBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
}
}); });
} }
function stopContinuousTask() { function stopContinuousTask() {
backgroundTaskManager.stopBackgroundRunning(mContext).then(() => { try {
console.info("Operation stopBackgroundRunning succeeded"); backgroundTaskManager.stopBackgroundRunning(featureAbility.getContext()).then(() => {
}).catch((err) => { console.info("Operation stopBackgroundRunning succeeded");
console.error("Operation stopBackgroundRunning failed Cause: " + err); }).catch((err) => {
}); console.error(`Operation stopBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
});
} catch (error) {
console.error(`Operation stopBackgroundRunning failed. code is ${error.code} message is ${error.message}`);
}
} }
class MySequenceable { class MySequenceable {
...@@ -494,9 +543,11 @@ export default class BgTaskAbility extends Ability { ...@@ -494,9 +543,11 @@ export default class BgTaskAbility extends Ability {
**表1** 能效资源申请主要接口 **表1** 能效资源申请主要接口
> **说明:** 后台任务管理错误码见[backgroundTaskManager错误码](../errorcodes/errorcode-backgroundTaskMgr.md)。
| 接口名 | 描述 | | 接口名 | 描述 |
| ---------------------------------------- | ---------------------------------------- | | ---------------------------------------- | ---------------------------------------- |
| applyEfficiencyResources(request: [EfficiencyResourcesRequest](../reference/apis/js-apis-backgroundTaskManager.md#efficiencyresourcesrequest9)): boolean | 申请能效资源。 | | applyEfficiencyResources(request: [EfficiencyResourcesRequest](../reference/apis/js-apis-backgroundTaskManager.md#efficiencyresourcesrequest9)): void | 申请能效资源。 |
| resetAllEfficiencyResources():void | 释放申请的能效资源。 | | resetAllEfficiencyResources():void | 释放申请的能效资源。 |
...@@ -506,7 +557,7 @@ export default class BgTaskAbility extends Ability { ...@@ -506,7 +557,7 @@ export default class BgTaskAbility extends Ability {
1. 申请能效资源 1. 申请能效资源
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
let request = { let request = {
resourceTypes: backgroundTaskManager.ResourceType.CPU, resourceTypes: backgroundTaskManager.ResourceType.CPU,
...@@ -516,14 +567,18 @@ let request = { ...@@ -516,14 +567,18 @@ let request = {
isPersist: true, isPersist: true,
isProcess: true, isProcess: true,
}; };
let res = backgroundTaskManager.applyEfficiencyResources(request); try {
console.info("the result of request is: " + res); backgroundTaskManager.applyEfficiencyResources(request);
console.info("applyEfficiencyResources success. ");
} catch (error) {
console.error(`applyEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
``` ```
2. 释放申请的部分资源 2. 释放申请的部分资源
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
let request = { let request = {
resourceTypes: backgroundTaskManager.ResourceType.CPU, resourceTypes: backgroundTaskManager.ResourceType.CPU,
...@@ -531,22 +586,30 @@ let request = { ...@@ -531,22 +586,30 @@ let request = {
timeOut: 0, timeOut: 0,
reason: "reset", reason: "reset",
}; };
let res = backgroundTaskManager.applyEfficiencyResources(request); try {
console.info("the result of request is: " + res); backgroundTaskManager.applyEfficiencyResources(request);
console.info("applyEfficiencyResources success. ");
} catch (error) {
console.error(`applyEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
``` ```
3. 释放申请的所有资源 3. 释放申请的所有资源
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
backgroundTaskManager.backgroundTaskManager.resetAllEfficiencyResources(); try {
backgroundTaskManager.backgroundTaskManager.resetAllEfficiencyResources();
} catch (error) {
console.error(`resetAllEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
``` ```
### 开发实例 ### 开发实例
```js ```js
import backgroundTaskManager from '@ohos.backgroundTaskManager'; import backgroundTaskManager from '@ohos.resourceschedule.backgroundTaskManager';
// 申请能效资源 // 申请能效资源
let request = { let request = {
...@@ -558,8 +621,12 @@ let request = { ...@@ -558,8 +621,12 @@ let request = {
isPersist: true, isPersist: true,
isProcess: true, isProcess: true,
}; };
let res = backgroundTaskManager.applyEfficiencyResources(request); try {
console.info("the result of request is: " + res); backgroundTaskManager.applyEfficiencyResources(request);
console.info("applyEfficiencyResources success. ");
} catch (error) {
console.error(`applyEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
// 释放部分资源 // 释放部分资源
request = { request = {
...@@ -568,11 +635,19 @@ request = { ...@@ -568,11 +635,19 @@ request = {
timeOut: 0, timeOut: 0,
reason: "reset", reason: "reset",
}; };
res = backgroundTaskManager.applyEfficiencyResources(request); try {
console.info("the result of request is: " + res); backgroundTaskManager.applyEfficiencyResources(request);
console.info("applyEfficiencyResources success. ");
} catch (error) {
console.error(`applyEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
// 释放全部资源 // 释放全部资源
backgroundTaskManager.backgroundTaskManager.resetAllEfficiencyResources(); try {
backgroundTaskManager.backgroundTaskManager.resetAllEfficiencyResources();
} catch (error) {
console.error(`resetAllEfficiencyResources failed. code is ${error.code} message is ${error.message}`);
}
``` ```
## 相关实例 ## 相关实例
......
...@@ -4,11 +4,10 @@ ...@@ -4,11 +4,10 @@
应用要执行对实时性要求不高的任务的时候,比如设备空闲时候做一次数据学习等场景,可以使用延迟调度任务,该机制在满足应用设定条件的时候,会根据系统当前状态,如内存、功耗、温度等统一决策调度时间。延迟任务调度约束见[延迟任务调度概述](./work-scheduler-overview.md) 应用要执行对实时性要求不高的任务的时候,比如设备空闲时候做一次数据学习等场景,可以使用延迟调度任务,该机制在满足应用设定条件的时候,会根据系统当前状态,如内存、功耗、温度等统一决策调度时间。延迟任务调度约束见[延迟任务调度概述](./work-scheduler-overview.md)
## 接口说明 ## 接口说明
注册相关接口包导入: 注册相关接口包导入:
```js ```js
import workScheduler from '@ohos.workScheduler'; import workScheduler from '@ohos.resourceschedule.workScheduler';
``` ```
回调相关接口包导入: 回调相关接口包导入:
...@@ -20,15 +19,17 @@ import WorkSchedulerExtensionAbility from '@ohos.WorkSchedulerExtensionAbility'; ...@@ -20,15 +19,17 @@ import WorkSchedulerExtensionAbility from '@ohos.WorkSchedulerExtensionAbility';
**表1** workScheduler主要接口 **表1** workScheduler主要接口
> **说明:** 延迟任务调度错误码见[workScheduler错误码](../../api/errorcodes/errorcode-workScheduler.md)。
接口名 | 接口描述 接口名 | 接口描述
---------------------------------------------------------|----------------------------------------- ---------------------------------------------------------|-----------------------------------------
startWork(work: WorkInfo): boolean; | 延迟调度任务申请 startWork(work: WorkInfo): void; | 延迟调度任务申请
stopWork(work: WorkInfo, needCancel?: boolean): boolean; | 延迟调度任务取消 stopWork(work: WorkInfo, needCancel?: boolean): void; | 延迟调度任务取消
getWorkStatus(workId: number, callback: AsyncCallback\<WorkInfo>): void;| 获取延迟调度任务状态(Callback形式) getWorkStatus(workId: number, callback: AsyncCallback\<WorkInfo>): void;| 获取延迟调度任务状态(Callback形式)
getWorkStatus(workId: number): Promise\<WorkInfo>; | 获取延迟调度任务状态(Promise形式) getWorkStatus(workId: number): Promise\<WorkInfo>; | 获取延迟调度任务状态(Promise形式)
obtainAllWorks(callback: AsyncCallback\<void>): Array\<WorkInfo>;| 获取所有延迟调度任务(Callback形式) obtainAllWorks(callback: AsyncCallback\<void>): Array\<WorkInfo>;| 获取所有延迟调度任务(Callback形式)
obtainAllWorks(): Promise<Array\<WorkInfo>>;| 获取所有延迟调度任务(Promise形式) obtainAllWorks(): Promise<Array\<WorkInfo>>;| 获取所有延迟调度任务(Promise形式)
stopAndClearWorks(): boolean;| 停止并清除任务 stopAndClearWorks(): void;| 停止并清除任务
isLastWorkTimeOut(workId: number, callback: AsyncCallback\<void>): boolean;| 获取上次任务是否超时(针对RepeatWork,Callback形式) isLastWorkTimeOut(workId: number, callback: AsyncCallback\<void>): boolean;| 获取上次任务是否超时(针对RepeatWork,Callback形式)
isLastWorkTimeOut(workId: number): Promise\<boolean>;| 获取上次任务是否超时(针对RepeatWork,Promise形式) isLastWorkTimeOut(workId: number): Promise\<boolean>;| 获取上次任务是否超时(针对RepeatWork,Promise形式)
...@@ -77,7 +78,7 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调 ...@@ -77,7 +78,7 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调
**注册延迟任务** **注册延迟任务**
import workScheduler from '@ohos.workScheduler'; import workScheduler from '@ohos.resourceschedule.workScheduler';
let workInfo = { let workInfo = {
workId: 1, workId: 1,
...@@ -93,14 +94,18 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调 ...@@ -93,14 +94,18 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调
mykey3: 1.5 mykey3: 1.5
} }
} }
var res = workScheduler.startWork(workInfo); try{
console.info("workschedulerLog res:" + res); workScheduler.startWork(workInfo);
console.info('workschedulerLog startWork success');
} catch (error) {
console.error(`workschedulerLog startwork failed. code is ${error.code} message is ${error.message}`);
}
**取消延迟任务** **取消延迟任务**
import workScheduler from '@ohos.workScheduler'; import workScheduler from '@ohos.resourceschedule.workScheduler';
let workInfo = { let workInfo = {
workId: 1, workId: 1,
...@@ -116,83 +121,114 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调 ...@@ -116,83 +121,114 @@ onWorkStop(work: WorkInfo): void | 延迟调度任务结束回调
mykey3: 1.5 mykey3: 1.5
} }
} }
var res = workScheduler.stopWork(workInfo, false); try{
console.info("workschedulerLog res:" + res); workScheduler.stopWork(workInfo, false);
console.info('workschedulerLog stopWork success');
} catch (error) {
console.error(`workschedulerLog stopWork failed. code is ${error.code} message is ${error.message}`);
}
**获取指定延迟任务** **获取指定延迟任务**
1.Callback写法 1.Callback写法
workScheduler.getWorkStatus(50, (err, res) => { try{
if (err) { workScheduler.getWorkStatus(50, (error, res) => {
console.info('workschedulerLog getWorkStatus failed, because:' + err.code); if (error) {
} else { console.error(`workschedulerLog getWorkStatus failed. code is ${error.code} message is ${error.message}`);
for (let item in res) { } else {
console.info('workschedulerLog getWorkStatuscallback success,' + item + ' is:' + res[item]); for (let item in res) {
console.info(`workschedulerLog getWorkStatus success, ${item} is: ${res[item]}`);
}
} }
} });
}); } catch (error) {
console.error(`workschedulerLog getWorkStatus failed. code is ${error.code} message is ${error.message}`);
}
2.Promise写法 2.Promise写法
workScheduler.getWorkStatus(50).then((res) => { try{
for (let item in res) { workScheduler.getWorkStatus(50).then((res) => {
console.info('workschedulerLog getWorkStatus success,' + item + ' is:' + res[item]); for (let item in res) {
} console.info(`workschedulerLog getWorkStatus success, ${item} is: ${res[item]}`);
}).catch((err) => { }
console.info('workschedulerLog getWorkStatus failed, because:' + err.code); }).catch((error) => {
}) console.error(`workschedulerLog getWorkStatus failed. code is ${error.code} message is ${error.message}`);
})
} catch (error) {
console.error(`workschedulerLog getWorkStatus failed. code is ${error.code} message is ${error.message}`);
}
**获取所有延迟任务** **获取所有延迟任务**
1.Callback写法 1.Callback写法
workScheduler.obtainAllWorks((err, res) =>{ try{
if (err) { workScheduler.obtainAllWorks((error, res) =>{
console.info('workschedulerLog obtainAllWorks failed, because:' + err.code); if (error) {
} else { console.error(`workschedulerLog obtainAllWorks failed. code is ${error.code} message is ${error.message}`);
console.info('workschedulerLog obtainAllWorks success, data is:' + JSON.stringify(res)); } else {
} console.info(`workschedulerLog obtainAllWorks success, data is: ${JSON.stringify(res)}`);
}); }
});
} catch (error) {
console.error(`workschedulerLog obtainAllWorks failed. code is ${error.code} message is ${error.message}`);
}
2.Promise写法 2.Promise写法
workScheduler.obtainAllWorks().then((res) => { try{
console.info('workschedulerLog obtainAllWorks success, data is:' + JSON.stringify(res)); workScheduler.obtainAllWorks().then((res) => {
}).catch((err) => { console.info(`workschedulerLog obtainAllWorks success, data is: ${JSON.stringify(res)}`);
console.info('workschedulerLog obtainAllWorks failed, because:' + err.code); }).catch((error) => {
}) console.error(`workschedulerLog obtainAllWorks failed. code is ${error.code} message is ${error.message}`);
})
} catch (error) {
console.error(`workschedulerLog obtainAllWorks failed. code is ${error.code} message is ${error.message}`);
}
**停止并清除任务** **停止并清除任务**
let res = workScheduler.stopAndClearWorks(); try{
console.info("workschedulerLog res:" + res); workScheduler.stopAndClearWorks();
console.info(`workschedulerLog stopAndClearWorks success`);
} catch (error) {
console.error(`workschedulerLog stopAndClearWorks failed. code is ${error.code} message is ${error.message}`);
}
**判断上次执行是否超时** **判断上次执行是否超时**
1.Callback写法 1.Callback写法
workScheduler.isLastWorkTimeOut(500, (err, res) =>{ try{
if (err) { workScheduler.isLastWorkTimeOut(500, (error, res) =>{
console.info('workschedulerLog isLastWorkTimeOut failed, because:' + err.code); if (error) {
} else { onsole.error(`workschedulerLog isLastWorkTimeOut failed. code is ${error.code} message is ${error.message}`);
console.info('workschedulerLog isLastWorkTimeOut success, data is:' + res); } else {
} console.info(`workschedulerLog isLastWorkTimeOut success, data is: ${res}`);
}); }
});
} catch (error) {
console.error(`workschedulerLog isLastWorkTimeOut failed. code is ${error.code} message is ${error.message}`);
}
2.Promise写法 2.Promise写法
workScheduler.isLastWorkTimeOut(500) try{
.then(res => { workScheduler.isLastWorkTimeOut(500)
console.info('workschedulerLog isLastWorkTimeOut success, data is:' + res); .then(res => {
}) console.info(`workschedulerLog isLastWorkTimeOut success, data is: ${res}`);
.catch(err => { })
console.info('workschedulerLog isLastWorkTimeOut failed, because:' + err.code); .catch(error => {
}); console.error(`workschedulerLog isLastWorkTimeOut failed. code is ${error.code} message is ${error.message}`);
}) });
} catch (error) {
console.error(`workschedulerLog isLastWorkTimeOut failed. code is ${error.code} message is ${error.message}`);
}
## 相关实例 ## 相关实例
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册