2010-12-13 4 views
0

누구나 PowerManager.Wakelock의이 방법을 설명 할 수 있습니까?Wakelock 참조 수

setReferenceCounted

"웨이크 잠금 참조 기본적으로 계산됩니다." - 왜?

+0

이 문제와 관련하여 제기 된 버그가 있습니다.이 질문을 제기 한 유일한 사람이 아닌가하면 http://code.google.com/p/android/issues/detail?id=5958 – DeRagan

+0

확인. 따라서 모든 릴리스에 대해 잠금을 해제하면 예외가 발생하지 않도록 미리 확인해야합니다. 나는 그걸로 살 수있다 :) 그 충고에 감사드립니다. – cody

답변

6

많은 경우 참조 횟수를 계산하는 것이 편리하기 때문에

WakefulIntentService을 예로 들어주십시오. 장치가 작동 될 때까지 장치를 깨우기 위해 서비스를 준비해야하지만 일단 작업이 완료되면 장치가 잠 들어있을 수 있습니다. 가장 쉬운 방법은 참조 카운트 WakeLock을 사용하는 것이므로 각 작업에 대한 참조 횟수를 늘리고 작업이 완료되면 참조 횟수를 줄입니다. 참조 횟수가 0이되면 Android가 WakeLock을 출시하고 기기가 다시 잠들 수 있습니다.

참조가없는 WakeLock이 유용 할 수있는 시나리오가있을 수 있습니다.하지만 준비 할 때 그 예가 없습니다.

+0

내 질문에 대한 답변입니다. 감사! – cody

+0

어떻게 레퍼런스 카운트 값을 증가/감소시킬 수 있습니까? –

+0

@PareshMayani :'acquire()'할 때 증가하고'release()'할 때 감소합니다. – CommonsWare

관련 문제