我有一种情况,我有3个不同的服务,都需要唤醒锁。
在执行结束时我想释放唤醒锁,然而,我担心释放其唤醒锁的给定服务会破坏不同服务的行为。所以,我想象的场景是:
服务A抓住唤醒锁并开始做某事
服务B抓住唤醒锁并开始做某事
服务A完成并释放唤醒锁
此时服务B会发生什么?
所以,我的基本问题是:
a)这是需要担心的事情,还是Android会在幕后为我自动管理这个问题(我的假设是不是这样)?
b)如果没有完成任何服务,确保唤醒锁定仍然存在的最佳方法是什么,或者抓住不会相互破坏的单独的唤醒锁?
答案 0 :(得分:1)
如果没有完成任何服务,确保唤醒锁定仍然存在的最佳方法是什么
致电setReferenceCounted(true)
上的WakeLock
。这已经默认设置了,但如果你愿意,可以再次调用它。