public class

PerfDataBufferPrologue

extends AbstractPerfDataBufferPrologue
java.lang.Object
   ↳ sun.jvmstat.perfdata.monitor.AbstractPerfDataBufferPrologue
     ↳ sun.jvmstat.perfdata.monitor.v2_0.PerfDataBufferPrologue

Class Overview

Class representing the 2.0 version of the HotSpot PerfData instrumentation buffer header.

The PerfDataBufferPrologue class supports parsing of the version specific portions of the PerfDataPrologue C structure:

 typedef struct {
   ...                      // handled by superclass
   jint used;               // number of PerfData memory bytes used
   jint overflow;           // number of bytes of overflow
   jlong mod_time_stamp;    // time stamp of the last structural modification
   jint entry_offset;       // offset of the first PerfDataEntry
   jint num_entries;        // number of allocated PerfData entries
 } PerfDataPrologue
 

Summary

[Expand]
Inherited Constants
From class sun.jvmstat.perfdata.monitor.AbstractPerfDataBufferPrologue
[Expand]
Inherited Fields
From class sun.jvmstat.perfdata.monitor.AbstractPerfDataBufferPrologue
Public Constructors
PerfDataBufferPrologue(ByteBuffer byteBuffer)
Create an instance of PerfDataBufferPrologue from the given ByteBuffer object.
Public Methods
int getBufferSize()
Get the size of the instrumentation memory buffer.
int getEntryOffset()
Get the offset of the first PerfDataEntry.
long getModificationTimeStamp()
Get the time of last modification for the instrumentation memory buffer.
int getNumEntries()
Get the offset of the first PerfDataEntry.
int getOverflow()
Get the buffer overflow amount.
int getSize()
Get the size of the header portion of the instrumentation buffer.
int getUsed()
Get the utilization of the instrumentation memory buffer.
boolean isAccessible()
Get the accessible flag.
boolean supportsAccessible()
Test if the accessible flag is supported by this version of the PerfDataBufferPrologue.
[Expand]
Inherited Methods
From class sun.jvmstat.perfdata.monitor.AbstractPerfDataBufferPrologue
From class java.lang.Object

Public Constructors

public PerfDataBufferPrologue (ByteBuffer byteBuffer)

Create an instance of PerfDataBufferPrologue from the given ByteBuffer object.

Parameters
byteBuffer the buffer containing the binary header data

Public Methods

public int getBufferSize ()

Get the size of the instrumentation memory buffer.

Returns
  • int - the size of the buffer

public int getEntryOffset ()

Get the offset of the first PerfDataEntry.

public long getModificationTimeStamp ()

Get the time of last modification for the instrumentation memory buffer. This method returns the time, as ticks since the start of the target JVM, of the last structural modification to the instrumentation buffer. Structural modifications correspond to the addition or deletion of instrumentation objects. Updates to counter values are not structural modifications.

public int getNumEntries ()

Get the offset of the first PerfDataEntry.

public int getOverflow ()

Get the buffer overflow amount. This value is non-zero if the HotSpot JVM has overflowed the instrumentation memory buffer. The target JVM can be restarted with -XX:PerfDataMemSize=X to create a larger memory buffer.

Returns
  • int - the size of the buffer

public int getSize ()

Get the size of the header portion of the instrumentation buffer.

Returns
  • int - the size of the header

public int getUsed ()

Get the utilization of the instrumentation memory buffer.

Returns
  • int - the utilization of the buffer

public boolean isAccessible ()

Get the accessible flag. If supported, it indicates that the shared memory region is sufficiently initialized for client acccess.

Returns
  • boolean - the initialized status

public boolean supportsAccessible ()

Test if the accessible flag is supported by this version of the PerfDataBufferPrologue. Although not an abstract method, this method should be overridden by version specific subclasses.

Returns
  • boolean - the initialized flag support status.