2011-12-02 6 views
4

je lance la commande Monkey Android suivante:Android singe ne génère pas HPROF de vidage

adb shell monkey --hprof -v -p com.my.app 5000 

Il doit créer un fichier hprof sous/data/misc, mais il ne fonctionne pas. J'ai chmodé 777/data/misc.

J'ai ensuite essayé tuer -10 APP_PID, mais nous avons eu les suivantes sous logcat:

I/dalvikvm( 771): threadid=4: reacting to signal 10 
I/dalvikvm( 771): SIGUSR1 forcing GC (no HPROF) 
D/dalvikvm( 771): GC_EXPLICIT freed 46K, 38% free 8352K/13383K, external 15387K/15496K, paused 98ms 

Je suis en version CyanogenMod 7, la version Android 2.3.7 sur Galaxy S.

Pourquoi y at-il "no HPROF", et comment puis-je obtenir un vidage HPROF via Monkey et tuer -10?

Merci

Répondre

3

Lorsqu'il est appelé avec --hprof singe envoie un signal SIGUSR1 à tous les processus, mais le dumping des données HPROF a été désactivé à partir Dalvik par ce patch:

engager b037a464512c0721bdca969ae19cce3d4b17b083 Auteur: Andy McFadden Date de : Fri Jul 16 11:07:58 2010 -0700

Don't do heap dump on SIGUSR1. 

We still do the GC, but without the HPROF heap dump. 

Change-Id: I004a65b9571667dd320dfabec1441d0fc8b9970a 

Ainsi, sur SIGUSR1 seul GC est invoqué. Je suppose que l'option --hprof devrait être supprimée de singe.

Questions connexes