summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/am/ProcessRecord.java
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2011-07-13 19:33:41 -0700
committerDianne Hackborn <hackbod@google.com>2011-07-14 10:39:39 -0700
commitce86ba86df61de8b34b226a4eb6c23ec33e866e0 (patch)
treebd6a8d599da38dd78c28f82cf0575b4294ff7199 /services/java/com/android/server/am/ProcessRecord.java
parentf7537bccb2b2ca2fa6c0205c4b24acd0836c0006 (diff)
downloadframeworks_base-ce86ba86df61de8b34b226a4eb6c23ec33e866e0.zip
frameworks_base-ce86ba86df61de8b34b226a4eb6c23ec33e866e0.tar.gz
frameworks_base-ce86ba86df61de8b34b226a4eb6c23ec33e866e0.tar.bz2
Improve handling of low memory.
Now classify background processes into a set of bins of how much memory they should try to clear. The last bin also involves destroying all activities in that process. Removed the old code for the simulator that is no longer needed (yay). The debugging features it had are now integrated into the regular oom adj code. Small fixes to load average service. Change-Id: Ic8df401714b188c73b50dbc8f8e6345b58f1f3a0
Diffstat (limited to 'services/java/com/android/server/am/ProcessRecord.java')
-rw-r--r--services/java/com/android/server/am/ProcessRecord.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/services/java/com/android/server/am/ProcessRecord.java b/services/java/com/android/server/am/ProcessRecord.java
index da83e7d..99830f9 100644
--- a/services/java/com/android/server/am/ProcessRecord.java
+++ b/services/java/com/android/server/am/ProcessRecord.java
@@ -61,6 +61,7 @@ class ProcessRecord {
int setAdj; // Last set OOM adjustment for this process
int curSchedGroup; // Currently desired scheduling class
int setSchedGroup; // Last set to background scheduling class
+ int trimMemoryLevel; // Last selected memory trimming level
boolean keeping; // Actively running code so don't kill due to that?
boolean setIsForeground; // Running foreground UI when last set?
boolean foregroundServices; // Running any services that are foreground?
@@ -181,7 +182,8 @@ class ProcessRecord {
pw.print(" cur="); pw.print(curAdj);
pw.print(" set="); pw.println(setAdj);
pw.print(prefix); pw.print("curSchedGroup="); pw.print(curSchedGroup);
- pw.print(" setSchedGroup="); pw.println(setSchedGroup);
+ pw.print(" setSchedGroup="); pw.print(setSchedGroup);
+ pw.print(" trimMemoryLevel="); pw.println(trimMemoryLevel);
pw.print(prefix); pw.print("setIsForeground="); pw.print(setIsForeground);
pw.print(" foregroundServices="); pw.print(foregroundServices);
pw.print(" forcingToForeground="); pw.println(forcingToForeground);
@@ -305,8 +307,6 @@ class ProcessRecord {
}
void toShortString(StringBuilder sb) {
- sb.append(Integer.toHexString(System.identityHashCode(this)));
- sb.append(' ');
sb.append(pid);
sb.append(':');
sb.append(processName);
@@ -320,6 +320,8 @@ class ProcessRecord {
}
StringBuilder sb = new StringBuilder(128);
sb.append("ProcessRecord{");
+ sb.append(Integer.toHexString(System.identityHashCode(this)));
+ sb.append(' ');
toShortString(sb);
sb.append('}');
return stringName = sb.toString();