Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c21550a8 authored by Brian Carlstrom's avatar Brian Carlstrom
Browse files

Adding android.os.Debug.countInstancesOfClass

- Debug.countInstancesOfClass is just a wrapper on
  dalvik.system.VMDebug.countInstancesOfClass to avoid code from
  depending on the dalvik classes directly

- Existing usages of VMDebug.countInstancesOfClass in ActivityThread
  and ViewDebug are converted to the new Debug.countInstancesOfClass

- Existing use of OpenSSLSocketImpl.instanceCount, which is being
  removed, is converted to Debug.countInstancesOfClass(OpenSSLSocketImpl.class)

Bug: 3015791
Change-Id: Iefa781292d5b82a63bad7254c913a09deb3b7888
parent 759bece1
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -77,7 +77,6 @@ import com.android.internal.os.BinderInternal;
import com.android.internal.os.RuntimeInit;
import com.android.internal.os.SamplingProfilerIntegration;

import dalvik.system.VMDebug;
import org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl;

import java.io.File;
@@ -710,14 +709,14 @@ public final class ActivityThread {
            long dalvikAllocated = dalvikMax - dalvikFree;
            long viewInstanceCount = ViewDebug.getViewInstanceCount();
            long viewRootInstanceCount = ViewDebug.getViewRootInstanceCount();
            long appContextInstanceCount = VMDebug.countInstancesOfClass(ContextImpl.class);
            long activityInstanceCount = VMDebug.countInstancesOfClass(Activity.class);
            long appContextInstanceCount = Debug.countInstancesOfClass(ContextImpl.class);
            long activityInstanceCount = Debug.countInstancesOfClass(Activity.class);
            int globalAssetCount = AssetManager.getGlobalAssetCount();
            int globalAssetManagerCount = AssetManager.getGlobalAssetManagerCount();
            int binderLocalObjectCount = Debug.getBinderLocalObjectCount();
            int binderProxyObjectCount = Debug.getBinderProxyObjectCount();
            int binderDeathObjectCount = Debug.getBinderDeathObjectCount();
            int openSslSocketCount = OpenSSLSocketImpl.getInstanceCount();
            int openSslSocketCount = Debug.countInstancesOfClass(OpenSSLSocketImpl.class);
            long sqliteAllocated = SQLiteDebug.getHeapAllocatedSize() / 1024;
            SQLiteDebug.PagerStats stats = SQLiteDebug.getDatabaseInfo();

+9 −0
Original line number Diff line number Diff line
@@ -774,6 +774,15 @@ href="{@docRoot}guide/developing/tools/traceview.html">Traceview: A Graphical Lo
     */
    public static native void dumpNativeHeap(FileDescriptor fd);

    /**
      * Returns a count of the extant instances of a class.
     *
     * @hide
     */
    public static long countInstancesOfClass(Class cls) {
        return VMDebug.countInstancesOfClass(cls);
    }

    /**
     * Returns the number of sent transactions from this process.
     * @return The number of sent transactions or -1 if it could not read t.
+2 −3
Original line number Diff line number Diff line
@@ -27,7 +27,6 @@ import android.graphics.Rect;
import android.os.Environment;
import android.os.Debug;
import android.os.RemoteException;
import dalvik.system.VMDebug;

import java.io.ByteArrayOutputStream;
import java.io.File;
@@ -431,7 +430,7 @@ public class ViewDebug {
     * @hide
     */
    public static long getViewInstanceCount() {
        return VMDebug.countInstancesOfClass(View.class);
        return Debug.countInstancesOfClass(View.class);
    }

    /**
@@ -442,7 +441,7 @@ public class ViewDebug {
     * @hide
     */
    public static long getViewRootInstanceCount() {
        return VMDebug.countInstancesOfClass(ViewRoot.class);
        return Debug.countInstancesOfClass(ViewRoot.class);
    }

    /**