summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author lijilou <lijilou@xiaomi.corp-partner.google.com> 2024-11-22 17:44:11 +0800
committer Jilou li <lijilou@xiaomi.corp-partner.google.com> 2024-11-22 09:48:41 +0000
commit39d71497b277b84c15d5e4a0d89fbeea52ec618c (patch)
treea3653d9c427da785287f738557099f1d8a4355ea
parentdc67a3414412ccec6c3e41001bbbb600935ed20f (diff)
WatchableImpl: add lock when get the mObservers size.
Bug: none Flag: EXEMPT minor optimization Change-Id: If22e5f15bd97e2523252268824f977dc472e6b1f
-rw-r--r--services/core/java/com/android/server/utils/WatchableImpl.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/utils/WatchableImpl.java b/services/core/java/com/android/server/utils/WatchableImpl.java
index 8a04ccf2dbc6..fec435154c83 100644
--- a/services/core/java/com/android/server/utils/WatchableImpl.java
+++ b/services/core/java/com/android/server/utils/WatchableImpl.java
@@ -33,6 +33,7 @@ public class WatchableImpl implements Watchable {
/**
* The list of observers.
*/
+ @GuardedBy("mObservers")
protected final ArrayList<Watcher> mObservers = new ArrayList<>();
/**
@@ -83,7 +84,9 @@ public class WatchableImpl implements Watchable {
* @return The number of registered observers.
*/
public int registeredObserverCount() {
- return mObservers.size();
+ synchronized (mObservers) {
+ return mObservers.size();
+ }
}
/**