summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2025-01-10 13:27:28 -0800
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2025-01-10 13:27:28 -0800
commit640ef5613e6e7694ef4dd9ee30416c27a633a009 (patch)
treecff0811fa41b7f68b806dd9d32a4705e730b40fe
parent3b0a3b560b56cf5726aabd8b98e6e964adcd6170 (diff)
parent0d1da087ab90bcd257784274a3a93354d3719488 (diff)
Merge "Looper: Add global and per process override for slow message threshold" into main am: 0d1da087ab
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2973492 Change-Id: Ifd0ecf738fcc26ac2c6558b4acf4e5898984d0d9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--core/java/android/os/Looper.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/core/java/android/os/Looper.java b/core/java/android/os/Looper.java
index 012590510714..a893943ead94 100644
--- a/core/java/android/os/Looper.java
+++ b/core/java/android/os/Looper.java
@@ -322,6 +322,23 @@ public final class Looper {
@android.ravenwood.annotation.RavenwoodReplace
private static int getThresholdOverride() {
+ // Allow overriding the threshold for all processes' main looper with a system prop.
+ // e.g. adb shell 'setprop log.looper.any.main.slow 1 && stop && start'
+ if (myLooper() == getMainLooper()) {
+ final int globalOverride = SystemProperties.getInt("log.looper.any.main.slow", -1);
+ if (globalOverride >= 0) {
+ return globalOverride;
+ }
+ }
+
+ // Allow overriding the threshold for all threads within a process with a system prop.
+ // e.g. adb shell 'setprop log.looper.1000.any.slow 1 && stop && start'
+ final int processOverride = SystemProperties.getInt("log.looper."
+ + Process.myUid() + ".any.slow", -1);
+ if (processOverride >= 0) {
+ return processOverride;
+ }
+
return SystemProperties.getInt("log.looper."
+ Process.myUid() + "."
+ Thread.currentThread().getName()