/*
* Method trace state. This is currently global. In theory we could make
* most of this per-thread.
- *
*/
typedef struct MethodTraceState {
/* these are set during VM init */
pthread_mutex_t startStopLock;
pthread_cond_t threadExitCond;
FILE* traceFile;
+ bool directToDdms;
int bufferSize;
int flags;
int gcCount; // #of times an allocation triggered a GC
+ int classInitCount; // #of initialized classes
+ u8 classInitTime; // cumulative time spent in class init (nsec)
+
#if PROFILE_EXTERNAL_ALLOCATIONS
int externalAllocCount; // #of calls to dvmTrackExternalAllocation()
int externalAllocSize; // #of bytes passed to ...ExternalAllocation()
* Start/stop method tracing.
*/
void dvmMethodTraceStart(const char* traceFileName, int traceFd, int bufferSize,
- int flags);
+ int flags, bool directToDdms);
bool dvmIsMethodTraceActive(void);
void dvmMethodTraceStop(void);