public static class JvmstatMonitor.ClassLoaderInstrumentation extends Object
Provide visibility about the internals of the JVM's class loader.
jvmstat_classloader_operations_totalevent: The type of event.
loaded: The virtual machine loaded a class. This occurs when the virtual
machine starts and builds its initial class dependency graph. Alternatively it may occur at
runtime when using the reflection facilities or programmatic class loader: Class.forName("java.lang.String"). As noted in unloaded, this can also
occur if an unneeded class is unloaded due to memory pressure in the permanent
generation and later needs to be reloaded. The virtual machine's default behavior is
to try to keep all classes statically loaded for the lifetime of the process. See ClassLoadingService::notify_class_loaded in the HotSpot source.
unloaded: The virtual machine unloaded a class. This event is likely to be rare
and will likely occur when either permanent generation memory space is too small
for all of the needed classes, or memory pressure occurs from excessive class loading churn.
Examples for this latter case of churn and memory pressure may be from using code generation
facilities from mock or dependency injection frameworks, though this case is most likely to
occur only in test suite runs. Most likely, memory pressure is a result from using a
poorly-designed dynamic language on the virtual machine that unintelligently uses code
generation for ad hoc type generation, thereby blasting the permanent generation
with leaky class metadata descriptors. See @{code
ClassLoadingService::notify_class_unloaded} in the HotSpot source.
initialized: The virtual machine initializes a class. The process of initializing
a class is different from loading it, in that initialization takes the process of loading
one important step further: it initializes all static fields and instantiates all
objects required for the fulfillment of that class, including performing further class
loading and initialization of dependent classes. The initialization process includes
running a class' static initializers: static {} blocks. Consult the Virtual
Machine Specification sections 2.16.4-5 and InstanceClass::initialize in the
HotSpot source for a further discussion.
jvmstat_classloader_duration_msoperation: The operation type.
find
parse
jvmstat_classloader_loaded_bytes| Constructor and Description |
|---|
JvmstatMonitor.ClassLoaderInstrumentation() |
public JvmstatMonitor.ClassLoaderInstrumentation()
Copyright © 2015. All Rights Reserved.