The GetSpecialClassProperties method of the IJavaEventMonitorIDInfo2 interface is called by a profiler to obtain a list of classes that have special properties.
The GetSpecialClassProperties method is implemented only by the IJavaEventMonitorIDInfo2 and IJavaEventMonitorIDInfo3 interfaces.
HRESULT GetSpecialClassProperties(unsigned *pnspecial_classes, ClassID **ppclass_ids, DWORD **ppclass_flags);
An array of ClassIDs and an array of associated flags for these ClassIDs for classes for which special information is available.
[out] *pnspecial_classes | The number of ClassIDs in the array. |
[out] **ppclass_ids | A pointer to an array of ClassIDs that have special properties. |
[out] **ppclass_flags | A pointer to a parallel array of a JVM_CLASS_PROPERTIES bitmask for each class with special properties. |
Classes for which special information is available include instances of java.lang.Class, java.lang.reflect.Method, java.lang.reflect.Field, java.lang.String, and java.lang.StringBuffer.
The possible bitmask flag for each special class can be a combination of the JVM_CLASS_PROPERTIES types or the last predefined combined type.
Constant | Value | Description |
JVM_CLS_VARIABLE_SIZE | 1 | Fields might not be present in all instances of the class. |
JVM_CLS_HAS_DESCRIPTION | 2 | The object might proxy to, or contain internal VM data structures. The DescribeObject method can be used to describe the contents of instances. |
ALL_JVM_CLS_PROPERTIES | 3 | All the previous flags are enabled. |