# Lite Power Manager - [Introduction](#section11660541593) - [Directory Structure](#section19472752217) - [Usage](#section146636391856) - [Available APIs](#section481251394) - [Usage Guidelines](#section12620311012) - [Repositories Involved](#section63151229062) ## Introduction The lite power manager provides the following capabilities: 1. Managing sleep and wakeup locks. 2. Keeping the device screen always on using a lock **Figure 1** Lite power manager architecture ![](figures/en-us_image_0000001079710638.png) ## Directory Structure ``` base/powermgr/powermgr_lite ├── figures # Architecture figures ├── frameworks # Frameworks │ ├── include # Header files │ └── src # Source files ├── interfaces # APIs │ ├── innerkits # Internal APIs │ └── kits # External APIs ├── services # Services │ ├── include # Header files │ └── src # Source files └── utils # Utilities ├── include # Header files └── src # Source files ``` ## Usage ### Available APIs The following table lists the JavaScript APIs provided by the lite power manager.

API

Description

RunningLock *CreateRunningLock(const char *name, RunningLockType type, RunningLockFlag flag)

Creates a Runninglock object.

void DestroyRunningLock(const RunningLock *lock)

Destroys an Runninglock object.

BOOL AcquireRunningLock(const RunningLock *lock)

Obtains a Runninglock object.

BOOL ReleaseRunningLock(const RunningLock *lock)

Releases a Runninglock object.

### Usage Guidelines **Runninglock Management** The lite power manager provides APIs to create, obtain, and release **Runninglock** objects. The sample code is as follows: ``` const RunningLock *lock = CreateRunningLock("runinglock_example", RUNNINGLOCK_BACKGROUND, RUNNINGLOCK_FLAG_NONE); if (lock == NULL) { return; } BOOL ret = AcquireRunningLock(lock); if (ret == FLASE) { DestroyRunningLock(lock); return; } ReleaseRunningLock(lock); DestroyRunningLock(lock); // Must release runninglock before destroyed ``` ## Repositories Involved [Power management subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/power-management.md) [powermgr_power_manager](https://gitee.com/openharmony/powermgr_power_manager) [powermgr_display_manager](https://gitee.com/openharmony/powermgr_display_manager) [powermgr_battery_manager](https://gitee.com/openharmony/powermgr_battery_manager) [powermgr_thermal_manager](https://gitee.com/openharmony/powermgr_thermal_manager) [powermgr_battery_statistics](https://gitee.com/openharmony/powermgr_battery_statistics) [powermgr_battery_lite](https://gitee.com/openharmony/powermgr_battery_lite) [powermgr_powermgr_lite](https://gitee.com/openharmony/powermgr_powermgr_lite)