diff options
Diffstat (limited to 'services/core/java/com/android/server/power/SuspendBlocker.java')
-rw-r--r-- | services/core/java/com/android/server/power/SuspendBlocker.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/power/SuspendBlocker.java b/services/core/java/com/android/server/power/SuspendBlocker.java index 565263f8ffaf..55c6a4937a90 100644 --- a/services/core/java/com/android/server/power/SuspendBlocker.java +++ b/services/core/java/com/android/server/power/SuspendBlocker.java @@ -35,6 +35,17 @@ interface SuspendBlocker { void acquire(); /** + * Acquires the suspend blocker. + * Prevents the CPU from going to sleep. + * + * Calls to acquire() nest and must be matched by the same number + * of calls to release(). + * + * @param id Identifier for this particular acquire. Used for tracking/logging. + */ + void acquire(String id); + + /** * Releases the suspend blocker. * Allows the CPU to go to sleep if no other suspend blockers are held. * @@ -43,5 +54,16 @@ interface SuspendBlocker { */ void release(); + /** + * Releases the suspend blocker. + * Allows the CPU to go to sleep if no other suspend blockers are held. + * + * It is an error to call release() if the suspend blocker has not been acquired. + * The system may crash. + * + * @param id Identifier for this particular release. Used for tracking/logging. + */ + void release(String id); + void dumpDebug(ProtoOutputStream proto, long fieldId); } |