<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_262-internal) on Thu Jun 04 16:40:08 GMT 2020 -->
<title>com.ibm.lang.management (OpenJ9 Monitoring and Management Interface Classes)</title>
<meta name="date" content="2020-06-04">
<meta name="keywords" content="com.ibm.lang.management package">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="com.ibm.lang.management (OpenJ9 Monitoring and Management Interface Classes)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><strong>OpenJ9 Monitoring and Management Interface Classes</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Package</li>
<li><a href="../../../../com/ibm/virtualization/management/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/ibm/lang/management/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Package" class="title">Package&nbsp;com.ibm.lang.management</h1>
<div class="docSummary">
<div class="block">OpenJ9 management extensions to java.lang.management.</div>
</div>
<p>See:&nbsp;<a href="#package.description">Description</a></p>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/CpuLoadCalculationConstants.html" title="interface in com.ibm.lang.management">CpuLoadCalculationConstants</a></td>
<td class="colLast">
<div class="block">Constants used by getProcessCpuLoad() and getSystemCpuLoad() methods.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ExtendedThreadInfo.html" title="interface in com.ibm.lang.management">ExtendedThreadInfo</a></td>
<td class="colLast">
<div class="block">Class encapsulates a ThreadInfo instance along with the corresponding native thread identification 
 information as assigned by the operating system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/GarbageCollectorMXBean.html" title="interface in com.ibm.lang.management">GarbageCollectorMXBean</a></td>
<td class="colLast">
<div class="block">The IBM-specific interface for managing and monitoring the virtual machine's
 garbage collection functionality.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/JvmCpuMonitorMXBean.html" title="interface in com.ibm.lang.management">JvmCpuMonitorMXBean</a></td>
<td class="colLast">
<div class="block">
 This interface provides APIs to obtain JVM CPU usage information in terms of thread categories.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/MemoryMXBean.html" title="interface in com.ibm.lang.management">MemoryMXBean</a></td>
<td class="colLast">
<div class="block">The IBM-specific interface for monitoring the virtual machine's memory
 management system.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/MemoryPoolMXBean.html" title="interface in com.ibm.lang.management">MemoryPoolMXBean</a></td>
<td class="colLast">
<div class="block">The OpenJ9 interface for managing and monitoring the virtual machine's memory pools.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/OperatingSystemMXBean.html" title="interface in com.ibm.lang.management">OperatingSystemMXBean</a></td>
<td class="colLast">
<div class="block">IBM specific platform management interface for the Operating System on which the Java Virtual Machine is running.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ProcessorMXBean.html" title="interface in com.ibm.lang.management">ProcessorMXBean</a></td>
<td class="colLast">
<div class="block">Interface for managing Processor resources.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/RuntimeMXBean.html" title="interface in com.ibm.lang.management">RuntimeMXBean</a></td>
<td class="colLast">
<div class="block">The IBM-specific interface for the runtime system of the virtual machine.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ThreadMXBean.html" title="interface in com.ibm.lang.management">ThreadMXBean</a></td>
<td class="colLast">
<div class="block">Class represents IBM specific interface to the ThreadMXBean.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/UnixOperatingSystemMXBean.html" title="interface in com.ibm.lang.management">UnixOperatingSystemMXBean</a></td>
<td class="colLast">
<div class="block">Interface provides platform-specific management utilities on Unix and Unix-like
 operating systems.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/AvailableProcessorsNotificationInfo.html" title="class in com.ibm.lang.management">AvailableProcessorsNotificationInfo</a></td>
<td class="colLast">
<div class="block">Encapsulates the details of a DLPAR notification emitted by a
 <a href="../../../../com/ibm/lang/management/OperatingSystemMXBean.html" title="interface in com.ibm.lang.management"><code>OperatingSystemMXBean</code></a> when the number
 of available processors changes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/JvmCpuMonitorInfo.html" title="class in com.ibm.lang.management">JvmCpuMonitorInfo</a></td>
<td class="colLast">
<div class="block"><code>JvmCpuMonitorInfo</code> provides a snapshot of JVM CPU usage information
 that is distributed across thread categories.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/MemoryUsage.html" title="class in com.ibm.lang.management">MemoryUsage</a></td>
<td class="colLast">
<div class="block">This represents a snapshot of the Operating System level Memory usage statistics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ProcessingCapacityNotificationInfo.html" title="class in com.ibm.lang.management">ProcessingCapacityNotificationInfo</a></td>
<td class="colLast">
<div class="block">Encapsulates the details of a DLPAR notification emitted by a
 <a href="../../../../com/ibm/lang/management/OperatingSystemMXBean.html" title="interface in com.ibm.lang.management"><code>OperatingSystemMXBean</code></a> when the available
 processing capacity changes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ProcessorUsage.html" title="class in com.ibm.lang.management">ProcessorUsage</a></td>
<td class="colLast">
<div class="block">This represents a snapshot of the Operating System level Processor usage statistics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/TotalPhysicalMemoryNotificationInfo.html" title="class in com.ibm.lang.management">TotalPhysicalMemoryNotificationInfo</a></td>
<td class="colLast">
<div class="block">Encapsulates the details of a DLPAR notification emitted by a
 <a href="../../../../com/ibm/lang/management/OperatingSystemMXBean.html" title="interface in com.ibm.lang.management"><code>OperatingSystemMXBean</code></a> when the total
 physical memory changes.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Summary table, listing enums, and an explanation">
<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/RuntimeMXBean.VMIdleStates.html" title="enum in com.ibm.lang.management">RuntimeMXBean.VMIdleStates</a></td>
<td class="colLast">
<div class="block">enum type defines the different states of the VM Idle</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Exception Summary table, listing exceptions, and an explanation">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/MemoryUsageRetrievalException.html" title="class in com.ibm.lang.management">MemoryUsageRetrievalException</a></td>
<td class="colLast">
<div class="block">Exception class whose instance is thrown when Memory usage sampling fails.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="../../../../com/ibm/lang/management/ProcessorUsageRetrievalException.html" title="class in com.ibm.lang.management">ProcessorUsageRetrievalException</a></td>
<td class="colLast">
<div class="block">Exception class whose instance is thrown when Processor usage sampling fails.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="package.description">
<!--   -->
</a>
<h2 title="Package com.ibm.lang.management Description">Package com.ibm.lang.management Description</h2>
<div class="block">OpenJ9 management extensions to java.lang.management.</div>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><strong>OpenJ9 Monitoring and Management Interface Classes</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Package</li>
<li><a href="../../../../com/ibm/virtualization/management/package-summary.html">Next&nbsp;Package</a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/ibm/lang/management/package-summary.html" target="_top">Frames</a></li>
<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><a href="https://www.eclipse.org/openj9/" target="_blank">Eclipse OpenJ9 website.</a><br> To raise a bug report or suggest an improvement create an <a href="https://github.com/eclipse/openj9/issues" target="_blank">Eclipse OpenJ9 issue.</a><br> Copyright &copy; 2001, 2020, IBM Corp. and others.</small></p>
</body>
</html>
