Merge "Add count of WebView instances to meminfo" into nyc-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
b0216412a2
@@ -108,6 +108,7 @@ import android.renderscript.RenderScriptCacheDir;
|
|||||||
import android.system.Os;
|
import android.system.Os;
|
||||||
import android.system.OsConstants;
|
import android.system.OsConstants;
|
||||||
import android.system.ErrnoException;
|
import android.system.ErrnoException;
|
||||||
|
import android.webkit.WebView;
|
||||||
|
|
||||||
import com.android.internal.annotations.GuardedBy;
|
import com.android.internal.annotations.GuardedBy;
|
||||||
import com.android.internal.app.IVoiceInteractor;
|
import com.android.internal.app.IVoiceInteractor;
|
||||||
@@ -1041,10 +1042,21 @@ public final class ActivityThread {
|
|||||||
long dalvikMax = runtime.totalMemory() / 1024;
|
long dalvikMax = runtime.totalMemory() / 1024;
|
||||||
long dalvikFree = runtime.freeMemory() / 1024;
|
long dalvikFree = runtime.freeMemory() / 1024;
|
||||||
long dalvikAllocated = dalvikMax - dalvikFree;
|
long dalvikAllocated = dalvikMax - dalvikFree;
|
||||||
|
|
||||||
|
Class[] classesToCount = new Class[] {
|
||||||
|
ContextImpl.class,
|
||||||
|
Activity.class,
|
||||||
|
WebView.class,
|
||||||
|
OpenSSLSocketImpl.class
|
||||||
|
};
|
||||||
|
long[] instanceCounts = VMDebug.countInstancesOfClasses(classesToCount, true);
|
||||||
|
long appContextInstanceCount = instanceCounts[0];
|
||||||
|
long activityInstanceCount = instanceCounts[1];
|
||||||
|
long webviewInstanceCount = instanceCounts[2];
|
||||||
|
long openSslSocketCount = instanceCounts[3];
|
||||||
|
|
||||||
long viewInstanceCount = ViewDebug.getViewInstanceCount();
|
long viewInstanceCount = ViewDebug.getViewInstanceCount();
|
||||||
long viewRootInstanceCount = ViewDebug.getViewRootImplCount();
|
long viewRootInstanceCount = ViewDebug.getViewRootImplCount();
|
||||||
long appContextInstanceCount = Debug.countInstancesOfClass(ContextImpl.class);
|
|
||||||
long activityInstanceCount = Debug.countInstancesOfClass(Activity.class);
|
|
||||||
int globalAssetCount = AssetManager.getGlobalAssetCount();
|
int globalAssetCount = AssetManager.getGlobalAssetCount();
|
||||||
int globalAssetManagerCount = AssetManager.getGlobalAssetManagerCount();
|
int globalAssetManagerCount = AssetManager.getGlobalAssetManagerCount();
|
||||||
int binderLocalObjectCount = Debug.getBinderLocalObjectCount();
|
int binderLocalObjectCount = Debug.getBinderLocalObjectCount();
|
||||||
@@ -1052,7 +1064,6 @@ public final class ActivityThread {
|
|||||||
int binderDeathObjectCount = Debug.getBinderDeathObjectCount();
|
int binderDeathObjectCount = Debug.getBinderDeathObjectCount();
|
||||||
long parcelSize = Parcel.getGlobalAllocSize();
|
long parcelSize = Parcel.getGlobalAllocSize();
|
||||||
long parcelCount = Parcel.getGlobalAllocCount();
|
long parcelCount = Parcel.getGlobalAllocCount();
|
||||||
long openSslSocketCount = Debug.countInstancesOfClass(OpenSSLSocketImpl.class);
|
|
||||||
SQLiteDebug.PagerStats stats = SQLiteDebug.getDatabaseInfo();
|
SQLiteDebug.PagerStats stats = SQLiteDebug.getDatabaseInfo();
|
||||||
|
|
||||||
dumpMemInfoTable(pw, memInfo, checkin, dumpFullInfo, dumpDalvik, dumpSummaryOnly,
|
dumpMemInfoTable(pw, memInfo, checkin, dumpFullInfo, dumpDalvik, dumpSummaryOnly,
|
||||||
@@ -1115,6 +1126,7 @@ public final class ActivityThread {
|
|||||||
"Parcel count:", parcelCount);
|
"Parcel count:", parcelCount);
|
||||||
printRow(pw, TWO_COUNT_COLUMNS, "Death Recipients:", binderDeathObjectCount,
|
printRow(pw, TWO_COUNT_COLUMNS, "Death Recipients:", binderDeathObjectCount,
|
||||||
"OpenSSL Sockets:", openSslSocketCount);
|
"OpenSSL Sockets:", openSslSocketCount);
|
||||||
|
printRow(pw, ONE_COUNT_COLUMN, "WebViews:", webviewInstanceCount);
|
||||||
|
|
||||||
// SQLite mem info
|
// SQLite mem info
|
||||||
pw.println(" ");
|
pw.println(" ");
|
||||||
|
|||||||
Reference in New Issue
Block a user