⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 perfmon.c

📁 用于移动设备上的java虚拟机源代码
💻 C
字号:
/* * @(#)perfmon.c	1.6 02/07/24 @(#) * * Copyright (c) 2001-2002 Sun Microsystems, Inc.  All rights reserved. * PROPRIETARY/CONFIDENTIAL * Use is subject to license terms. */#include <kni.h>#include <profiling.h>/**  * The system performance measurement count type's  */#define INSTRUCTION_COUNTER        0#define THREAD_SWITCH_COUNTER      1#define DYNAMIC_OBJECT_COUNTER     2#define DYNAMIC_ALLOC_COUNTER      3#define DYNAMIC_DEALLOC_COUNTER    4#define GARBAGE_COLLECTION_COUNTER 5#define TOTAL_GC_DEFERRALS         6#define MAX_GC_DEFERRALS           7#define GARBAGE_COLLECTION_RESCANS 8/*========================================================================= * FUNCTION:      sysGetCounter(I)I (STATIC) * CLASS:         com/sun/midp/perfmon/PerfMon * TYPE:          static native function * OVERVIEW:      queries the VM for performance data * INTERFACE (operand stack manipulation): *   parameters:  count - performance measurement count type *   returns:     current measurement value for count type *=======================================================================*/KNIEXPORT KNI_RETURNTYPE_INTJava_com_sun_midp_perfmon_PerfMon_sysGetCounter() {    int   count = KNI_GetParameterAsInt(1);    jint retval = 0;    switch (count)     {    case INSTRUCTION_COUNTER:                retval = (jint)InstructionCounter;        break;    case THREAD_SWITCH_COUNTER:        retval = (jint)ThreadSwitchCounter;        break;    case DYNAMIC_OBJECT_COUNTER:        retval = (jint)DynamicObjectCounter;        break;    case DYNAMIC_ALLOC_COUNTER:        retval = (jint)DynamicAllocationCounter;        break;    case DYNAMIC_DEALLOC_COUNTER:        retval = (jint)DynamicDeallocationCounter;        break;    case GARBAGE_COLLECTION_COUNTER:        retval = (jint)GarbageCollectionCounter;        break;    case TOTAL_GC_DEFERRALS:        retval = (jint)TotalGCDeferrals;        break;    case MAX_GC_DEFERRALS:        retval = (jint)MaximumGCDeferrals;        break;    case GARBAGE_COLLECTION_RESCANS:        retval = (jint)GarbageCollectionRescans;        break;    default :        break;    }    KNI_ReturnInt(retval);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -