diff options
| author | 2019-01-31 18:18:05 +0000 | |
|---|---|---|
| committer | 2019-01-31 18:18:05 +0000 | |
| commit | 68f93a1fb07186ea94420cde64fb80959321ecff (patch) | |
| tree | 4f155844d0abdeba4053e5c0ac2f7ce5d76883a9 | |
| parent | c9a6395ba2c5fbb230ae85498afc320036a252d8 (diff) | |
| parent | 0193e955fef43ef07796280da27c88b7cd0fdd3a (diff) | |
Merge "Enable offload queue based on flag value"
| -rw-r--r-- | services/core/java/com/android/server/am/ActivityManagerService.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 66e9eb3a33ba..d94fc03751f3 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -549,6 +549,11 @@ public class ActivityManagerService extends IActivityManager.Stub // Whether we should use SCHED_FIFO for UI and RenderThreads. boolean mUseFifoUiScheduling = false; + // Use an offload queue for long broadcasts, e.g. BOOT_COMPLETED. + // For simplicity, since we statically declare the size of the array of BroadcastQueues, + // we still create this new offload queue, but never ever put anything on it. + boolean mEnableOffloadQueue; + BroadcastQueue mFgBroadcastQueue; BroadcastQueue mBgBroadcastQueue; BroadcastQueue mOffloadBroadcastQueue; @@ -2283,6 +2288,9 @@ public class ActivityManagerService extends IActivityManager.Stub // by default, no "slow" policy in this queue offloadConstants.SLOW_TIME = Integer.MAX_VALUE; + mEnableOffloadQueue = SystemProperties.getBoolean( + "persist.device_config.activity_manager_native_boot.offload_queue_enabled", false); + mFgBroadcastQueue = new BroadcastQueue(this, mHandler, "foreground", foreConstants, false); mBgBroadcastQueue = new BroadcastQueue(this, mHandler, @@ -18389,6 +18397,6 @@ public class ActivityManagerService extends IActivityManager.Stub } private boolean isOnOffloadQueue(int flags) { - return ((flags & Intent.FLAG_RECEIVER_OFFLOAD) != 0); + return (mEnableOffloadQueue && ((flags & Intent.FLAG_RECEIVER_OFFLOAD) != 0)); } } |