summaryrefslogtreecommitdiffstats
path: root/core/java/android/app/ActivityThread.java
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2013-12-10 02:34:44 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2013-12-10 02:34:44 +0000
commit4524cc649affd5e83393ca07d5315fa09c617087 (patch)
tree4d9216aa19b523b61c5a38fe6be23979a30901c4 /core/java/android/app/ActivityThread.java
parent76d5bd925dccd5060b67638e32083adf8c84dbc0 (diff)
parentf2156ad2db37ea3733cd090ec05aac3cb6860f2b (diff)
downloadframeworks_base-4524cc649affd5e83393ca07d5315fa09c617087.zip
frameworks_base-4524cc649affd5e83393ca07d5315fa09c617087.tar.gz
frameworks_base-4524cc649affd5e83393ca07d5315fa09c617087.tar.bz2
am f2156ad2: am 6a58a2e7: am cb3ee4ed: am 3254260b: Merge "Update Dalvik process state through VMRuntime."
* commit 'f2156ad2db37ea3733cd090ec05aac3cb6860f2b': Update Dalvik process state through VMRuntime.
Diffstat (limited to 'core/java/android/app/ActivityThread.java')
-rw-r--r--core/java/android/app/ActivityThread.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java
index e667bad..d7a67f4 100644
--- a/core/java/android/app/ActivityThread.java
+++ b/core/java/android/app/ActivityThread.java
@@ -121,6 +121,7 @@ import libcore.io.EventLogger;
import libcore.io.IoUtils;
import dalvik.system.CloseGuard;
+import dalvik.system.VMRuntime;
final class RemoteServiceException extends AndroidRuntimeException {
public RemoteServiceException(String msg) {
@@ -1076,8 +1077,15 @@ public final class ActivityThread {
synchronized (this) {
if (mLastProcessState != processState) {
mLastProcessState = processState;
-
- // Update Dalvik state here based on ActivityManager.PROCESS_STATE_* constants.
+ // Update Dalvik state based on ActivityManager.PROCESS_STATE_* constants.
+ final int DALVIK_PROCESS_STATE_JANK_PERCEPTIBLE = 0;
+ final int DALVIK_PROCESS_STATE_JANK_IMPERCEPTIBLE = 1;
+ int dalvikProcessState = DALVIK_PROCESS_STATE_JANK_IMPERCEPTIBLE;
+ // TODO: Tune this since things like gmail sync are important background but not jank perceptible.
+ if (processState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND) {
+ dalvikProcessState = DALVIK_PROCESS_STATE_JANK_PERCEPTIBLE;
+ }
+ VMRuntime.getRuntime().updateProcessState(dalvikProcessState);
if (false) {
Slog.i(TAG, "******************* PROCESS STATE CHANGED TO: " + processState
+ (fromIpc ? " (from ipc": ""));