1# background_process_manager.h 2 3 4## 概述 5 6本模块提供了后台子进程管控接口。开发者可以通过本模块接口对子进程进行压制、解压制,避免子进程过多占用系统资源,导致系统使用卡顿。 本模块接口仅对通过[OH_Ability_StartNativeChildProcess](../apis-ability-kit/c-apis-ability-childprocess.md#oh_ability_startnativechildprocess)接口创建的子进程生效。 7 8**库:** libbackground_process_manager.z.so 9 10**系统能力:** SystemCapability.Resourceschedule.BackgroundProcessManager 11 12**起始版本:** 17 13 14**相关模块:**[BackgroundProcessManager](_background_process_manager.md) 15 16 17## 汇总 18 19 20### 类型定义 21 22| 名称 | 描述 | 23| -------- | -------- | 24| typedef enum [BackgroundProcessManager_ProcessPriority](_background_process_manager.md#backgroundprocessmanager_processpriority) [BackgroundProcessManager_ProcessPriority](_background_process_manager.md#backgroundprocessmanager_processpriority) | 子进程压制档位。 | 25| typedef enum [BackgroundProcessManager_ErrorCode](_background_process_manager.md#backgroundprocessmanager_errorcode) [BackgroundProcessManager_ErrorCode](_background_process_manager.md#backgroundprocessmanager_errorcode) | 定义后台子进程管控错误码。 | 26 27 28### 枚举 29 30| 名称 | 描述 | 31| -------- | -------- | 32| [BackgroundProcessManager_ProcessPriority](_background_process_manager.md#backgroundprocessmanager_processpriority) { [PROCESS_BACKGROUND](_background_process_manager.md) = 1, [PROCESS_INACTIVE](_background_process_manager.md) = 2 } | 子进程压制档位。 | 33| [BackgroundProcessManager_ErrorCode](_background_process_manager.md#backgroundprocessmanager_errorcode) { [ERR_BACKGROUND_PROCESS_MANAGER_SUCCESS](_background_process_manager.md) = 0, [ERR_BACKGROUND_PROCESS_MANAGER_INVALID_PARAM](_background_process_manager.md) = 401, [ERR_BACKGROUND_PROCESS_MANAGER_REMOTE_ERROR](_background_process_manager.md) = 31800001 } | 定义后台子进程管控错误码。 | 34 35 36### 函数 37 38| 名称 | 描述 | 39| -------- | -------- | 40| int [OH_BackgroundProcessManager_SetProcessPriority](_background_process_manager.md#oh_backgroundprocessmanager_setprocesspriority) (int pid, [BackgroundProcessManager_ProcessPriority](_background_process_manager.md#backgroundprocessmanager_processpriority) priority) | 设置子进程的压制档位,子进程被压制后可获得的CPU资源将会受到限制。如果主进程调度策略发生变化,如从后台切至前台等, 子进程会跟随主进程一同变化,子进程如需继续压制,需要重新调用本接口。 | 41| int [OH_BackgroundProcessManager_ResetProcessPriority](_background_process_manager.md#oh_backgroundprocessmanager_resetprocesspriority) (int pid) | 为子进程解压制,即子进程策略恢复为主进程调度策略。若主进程调度策略发生变化,如从后台切至前台等, 子进程会跟随主进程一同变化,等效于执行一次resetProcessPriority动作。 | 42