0

我正在开发一个可点击的小部件。我想使用一个静态的 java.util.concurrent.locks ReentrantLock 所以每次只调用一次小部件逻辑。

但我担心的是,在非常罕见的情况下,锁可能不会被释放,因为它会因为 10 秒的生命周期窗口而被预先杀死。

使用 ReentrantLock 是否存在反对意见?释放锁的最佳方法是什么?

或者也许有一个Android选项可以只运行单线程?

目前我正在考虑在finally块或finalize方法(哎哟)中释放onReceive结束时的锁。

4

1 回答 1

0

我想使用一个静态的 java.util.concurrent.locks ReentrantLock 所以每次只调用一次小部件逻辑。

onUpdate()AppWidgetProvider在主应用程序线程上调用一个。根据定义,它只能被称为“一次一次”。您不需要锁。

于 2012-05-06T15:48:07.317 回答