谁能解释这种 PowerManager.Wakelock 方法的用途?
“唤醒锁默认是引用计数的。” - 为什么?
因为在很多情况下让它们被引用计数真的很方便。
举WakefulIntentService
个例子。我需要安排服务以使设备保持足够长的唤醒时间以完成发送的任何工作,但是一旦工作完成,设备就会重新进入睡眠状态。最简单的方法是使用 reference-counted WakeLock
,因此我们增加每件工作的引用计数,并在工作完成时减少引用计数。当引用计数达到零时,Android 会释放WakeLock
并且设备可以重新进入睡眠状态。
在某些情况下,非引用计数WakeLock
可能会很有用,尽管我没有现成的例子。