Android的休眠唤醒机制wake_lock机制

wakel_lock:Android的一种休眠唤醒机制

 

使用场景:在LCD或TP关闭的时候,依然需要运行的关键代码,如电量统计、charger探测、音乐播放等,即使在休眠状态下也是需要正常运行的

 

主要思想:只要系统中存在有效锁,就阻止AP(可认为是ARM处理器)进入休眠状态,即不让处理器挂起,只有系统中所有锁都被释放之后系统才进入休眠状态

 

分类:suspend休眠锁、Idle空闲锁

 

底层实现:底层仍然使用驱动来实现该机制,具体参考如下链接

http://blog.csdn.net/g_salamander/article/details/7978772

 

底层接口:

1.    void wake_lock_init(struct wake_lock *lock, int type, const char *name);  

2.    void wake_lock_destroy(struct wake_lock *lock);  

3.    void wake_lock(struct wake_lock *lock);                                 //激活锁

4.    void wake_lock_timeout(struct wake_lock *lock, long timeout);  

5.    void wake_unlock(struct wake_lock *lock);                               //释放锁

6.    int wake_lock_active(struct wake_lock *lock);  

7.    long has_wake_lock(int type);  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值