Use new more efficient API for retrieving pss.
Change-Id: Ibcbcc397c2a7c19acd2de640528392df9bb780bb
This commit is contained in:
@@ -388,8 +388,8 @@ public class RunningState {
|
|||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean updateSize(Context context, Debug.MemoryInfo mem, int curSeq) {
|
boolean updateSize(Context context, long pss, int curSeq) {
|
||||||
mSize = ((long)mem.getTotalPss()) * 1024;
|
mSize = pss * 1024;
|
||||||
if (mCurSeq == curSeq) {
|
if (mCurSeq == curSeq) {
|
||||||
String sizeStr = Formatter.formatShortFileSize(
|
String sizeStr = Formatter.formatShortFileSize(
|
||||||
context, mSize);
|
context, mSize);
|
||||||
@@ -964,12 +964,12 @@ public class RunningState {
|
|||||||
for (int i=0; i<numProc; i++) {
|
for (int i=0; i<numProc; i++) {
|
||||||
pids[i] = mAllProcessItems.get(i).mPid;
|
pids[i] = mAllProcessItems.get(i).mPid;
|
||||||
}
|
}
|
||||||
Debug.MemoryInfo[] mem = ActivityManagerNative.getDefault()
|
long[] pss = ActivityManagerNative.getDefault()
|
||||||
.getProcessMemoryInfo(pids);
|
.getProcessPss(pids);
|
||||||
int bgIndex = 0;
|
int bgIndex = 0;
|
||||||
for (int i=0; i<pids.length; i++) {
|
for (int i=0; i<pids.length; i++) {
|
||||||
ProcessItem proc = mAllProcessItems.get(i);
|
ProcessItem proc = mAllProcessItems.get(i);
|
||||||
changed |= proc.updateSize(context, mem[i], mSequence);
|
changed |= proc.updateSize(context, pss[i], mSequence);
|
||||||
if (proc.mCurSeq == mSequence) {
|
if (proc.mCurSeq == mSequence) {
|
||||||
serviceProcessMemory += proc.mSize;
|
serviceProcessMemory += proc.mSize;
|
||||||
} else if (proc.mRunningProcessInfo.importance >=
|
} else if (proc.mRunningProcessInfo.importance >=
|
||||||
|
Reference in New Issue
Block a user