blob: 89ef6b2aa6ef170ebc566da3116234a40a73c1cf [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (16) -->
<title>JavaRuntime (OpenJ9 JDK 16)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: module: openj9.dtfj, package: com.ibm.dtfj.java.j9, class: JavaRuntime">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="com.ibm.dtfj.java.j9.JavaRuntime class">
<meta name="keywords" content="getJavaVM()">
<meta name="keywords" content="getJavaClassLoaders()">
<meta name="keywords" content="getThreads()">
<meta name="keywords" content="getCompiledMethods()">
<meta name="keywords" content="getMonitors()">
<meta name="keywords" content="getHeaps()">
<meta name="keywords" content="getTraceBuffer()">
<meta name="keywords" content="getFullVersion()">
<meta name="keywords" content="getVersion()">
<meta name="keywords" content="addClass()">
<meta name="keywords" content="addClassLoader()">
<meta name="keywords" content="getClassForID()">
<meta name="keywords" content="getClassLoaderForID()">
<meta name="keywords" content="addMonitor()">
<meta name="keywords" content="addHeap()">
<meta name="keywords" content="addHeapRoot()">
<meta name="keywords" content="addThread()">
<meta name="keywords" content="setTraceBufferForName()">
<meta name="keywords" content="getSystemProperty()">
<meta name="keywords" content="setSystemProperty()">
<meta name="keywords" content="equals()">
<meta name="keywords" content="hashCode()">
<meta name="keywords" content="getJavaVMInitArgs()">
<meta name="keywords" content="pointerInAddressSpace()">
<meta name="keywords" content="nativeThreadForID()">
<meta name="keywords" content="methodForID()">
<meta name="keywords" content="addMethodForID()">
<meta name="keywords" content="createJavaVMInitArgs()">
<meta name="keywords" content="bytesPerPointer()">
<meta name="keywords" content="getClasses()">
<meta name="keywords" content="getHeapRoots()">
<meta name="keywords" content="getObjectAtAddress()">
<meta name="keywords" content="addSpecialObject()">
<meta name="keywords" content="getSpecialObject()">
<meta name="keywords" content="getMemoryCategories()">
<meta name="keywords" content="getMemorySections()">
<meta name="keywords" content="isJITEnabled()">
<meta name="keywords" content="getJITProperties()">
<meta name="keywords" content="getStartTime()">
<meta name="keywords" content="getStartTimeNanos()">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar.top">
<div class="skip-nav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<div class="about-language"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 16</strong></div></div>
<ul id="navbar.top.firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/JavaRuntime.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-files/index-1.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip.navbar.top">
<!-- -->
</span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="module-label-in-type">Module</span>&nbsp;<a href="../../../../../module-summary.html">openj9.dtfj</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.ibm.dtfj.java.j9</a></div>
<h1 title="Class JavaRuntime" class="title">Class JavaRuntime</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">java.lang.Object</a>
<div class="inheritance">com.ibm.dtfj.java.j9.JavaRuntime</div>
</div>
<section class="description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code>, <code><a href="../../runtime/ManagedRuntime.html" title="interface in com.ibm.dtfj.runtime">ManagedRuntime</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">JavaRuntime</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a>
implements <a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor.summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><span class="member-name-link"><a href="#%3Cinit%3E(com.ibm.dtfj.image.j9.ImageProcess,com.ibm.dtfj.image.ImagePointer,java.lang.String)">JavaRuntime</a></span>&#8203;(<a href="../../image/j9/ImageProcess.html" title="class in com.ibm.dtfj.image.j9">ImageProcess</a>&nbsp;containingProc,
<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;baseAddress,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;runtimeVersion)</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method.summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addClass(com.ibm.dtfj.java.j9.JavaAbstractClass)">addClass</a></span>&#8203;(<a href="JavaAbstractClass.html" title="class in com.ibm.dtfj.java.j9">JavaAbstractClass</a>&nbsp;theClass)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addClassLoader(com.ibm.dtfj.java.j9.JavaClassLoader)">addClassLoader</a></span>&#8203;(<a href="JavaClassLoader.html" title="class in com.ibm.dtfj.java.j9">JavaClassLoader</a>&nbsp;loader)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addHeap(com.ibm.dtfj.java.j9.JavaHeap)">addHeap</a></span>&#8203;(<a href="JavaHeap.html" title="class in com.ibm.dtfj.java.j9">JavaHeap</a>&nbsp;heap)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addHeapRoot(com.ibm.dtfj.java.j9.JavaReference)">addHeapRoot</a></span>&#8203;(<a href="JavaReference.html" title="class in com.ibm.dtfj.java.j9">JavaReference</a>&nbsp;heapRoot)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addMethodForID(com.ibm.dtfj.java.j9.JavaMethod,long)">addMethodForID</a></span>&#8203;(<a href="JavaMethod.html" title="class in com.ibm.dtfj.java.j9">JavaMethod</a>&nbsp;method,
long&nbsp;id)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addMonitor(com.ibm.dtfj.java.j9.JavaMonitor)">addMonitor</a></span>&#8203;(<a href="JavaMonitor.html" title="class in com.ibm.dtfj.java.j9">JavaMonitor</a>&nbsp;monitor)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addSpecialObject(com.ibm.dtfj.java.JavaObject)">addSpecialObject</a></span>&#8203;(<a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a>&nbsp;obj)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addThread(com.ibm.dtfj.java.j9.JavaThread,long,long)">addThread</a></span>&#8203;(<a href="JavaThread.html" title="class in com.ibm.dtfj.java.j9">JavaThread</a>&nbsp;thread,
long&nbsp;blockedOnMonitor,
long&nbsp;waitingOnMonitor)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Adds a JavaThread to the runtime along with optional IDs of monitors that it is blocked on or waiting on</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>int</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#bytesPerPointer()">bytesPerPointer</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">A helper method required by some of the structures hanging off of the VM.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="JavaVMInitArgs.html" title="class in com.ibm.dtfj.java.j9">JavaVMInitArgs</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#createJavaVMInitArgs(int,boolean)">createJavaVMInitArgs</a></span>&#8203;(int&nbsp;version,
boolean&nbsp;ignoreUnrecognized)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a>&nbsp;obj)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Compares the argument to the receiver, and answers true
if they represent the <em>same</em> object using a class
specific comparison.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>protected <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getClasses()">getClasses</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../JavaClass.html" title="interface in com.ibm.dtfj.java">JavaClass</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getClassForID(long)">getClassForID</a></span>&#8203;(long&nbsp;classID)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../JavaClassLoader.html" title="interface in com.ibm.dtfj.java">JavaClassLoader</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getClassLoaderForID(long)">getClassLoaderForID</a></span>&#8203;(long&nbsp;loaderID)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getCompiledMethods()">getCompiledMethods</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">This is short cut method.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getFullVersion()">getFullVersion</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the 'full' version information for this runtime.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getHeapRoots()">getHeapRoots</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the set of object and class roots known to the VM.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getHeaps()">getHeaps</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the set of heaps known by the VM</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getJavaClassLoaders()">getJavaClassLoaders</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the set of class loaders active in this VM</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getJavaVM()">getJavaVM</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the object that represents the virtual machine</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../JavaVMInitArgs.html" title="interface in com.ibm.dtfj.java">JavaVMInitArgs</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getJavaVMInitArgs()">getJavaVMInitArgs</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Fetch the JavaVMInitArgs which were used to create this VM.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Properties.html" title="class or interface in java.util" class="external-link" target="_blank">Properties</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getJITProperties()">getJITProperties</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get any vendor specific properties in use by the JIT for this Java runtime</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getMemoryCategories()">getMemoryCategories</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Returns iterator of the top-level memory categories used by this
Java runtime.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getMemorySections(boolean)">getMemorySections</a></span>&#8203;(boolean&nbsp;includeFreed)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Returns an iterator of JavaRuntimeMemorySection objects corresponding to the blocks of memory allocated by the JavaRuntime.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getMonitors()">getMonitors</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Provides access to the collection of monitors used in the JavaVM.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getObjectAtAddress(com.ibm.dtfj.image.ImagePointer)">getObjectAtAddress</a></span>&#8203;(<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;address)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Gets the object located at address <code>address</code> in the heap.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getSpecialObject(com.ibm.dtfj.image.ImagePointer)">getSpecialObject</a></span>&#8203;(<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;address)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getStartTime()">getStartTime</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the time when the JVM was started.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>long</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getStartTimeNanos()">getStartTimeNanos</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the value of the JVM's high-resolution timer when the JVM was started.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getSystemProperty(java.lang.String)">getSystemProperty</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get a system property of the virtual machine.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getSystemProperty(java.lang.String,java.lang.String)">getSystemProperty</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;defaultValue)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getThreads()">getThreads</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the set of Java threads known by the VM</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getTraceBuffer(java.lang.String,boolean)">getTraceBuffer</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;bufferName,
boolean&nbsp;formatted)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Fetches implementation specific trace buffers, like the verbose GC buffer
or the Universal Trace Engine (UTE) buffer</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getVersion()">getVersion</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get the version data available for this runtime instance.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>int</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#hashCode()">hashCode</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Answers an integer hash code for the receiver.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#isJITEnabled()">isJITEnabled</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Determine if the JIT was enabled for this Java runtime.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="JavaMethod.html" title="class in com.ibm.dtfj.java.j9">JavaMethod</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#methodForID(long)">methodForID</a></span>&#8203;(long&nbsp;method)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../../image/ImageThread.html" title="interface in com.ibm.dtfj.image">ImageThread</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#nativeThreadForID(long)">nativeThreadForID</a></span>&#8203;(long&nbsp;nativeID)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a></code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#pointerInAddressSpace(long)">pointerInAddressSpace</a></span>&#8203;(long&nbsp;id)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Since a JavaVM cannot span address spaces, use the VM's container address space to build this pointer, given the raw ID</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#setSystemProperty(java.lang.String,java.lang.String)">setSystemProperty</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;value)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#setTraceBufferForName(com.ibm.dtfj.java.j9.TraceBuffer,java.lang.String)">setTraceBufferForName</a></span>&#8203;(<a href="TraceBuffer.html" title="class in com.ibm.dtfj.java.j9">TraceBuffer</a>&nbsp;buffer,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods.inherited.from.class.java.lang.Object">Methods declared in class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link" target="_blank">clone</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank">equals</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link" target="_blank">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link" target="_blank">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link" target="_blank">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link" target="_blank">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link" target="_blank">toString</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor.detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(com.ibm.dtfj.image.j9.ImageProcess,com.ibm.dtfj.image.ImagePointer,java.lang.String)">
<h3>JavaRuntime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">JavaRuntime</span>&#8203;<span class="parameters">(<a href="../../image/j9/ImageProcess.html" title="class in com.ibm.dtfj.image.j9">ImageProcess</a>&nbsp;containingProc,
<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;baseAddress,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;runtimeVersion)</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method.detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getJavaVM()">
<h3>getJavaVM</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a></span>&nbsp;<span class="element-name">getJavaVM</span>()
throws <span class="exceptions"><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getJavaVM()">JavaRuntime</a></code></span></div>
<div class="block">Get the object that represents the virtual machine</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getJavaVM()">getJavaVM</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>the address of the JavaVM structure which represents this JVM instance in JNI</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getJavaClassLoaders()">
<h3>getJavaClassLoaders</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getJavaClassLoaders</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getJavaClassLoaders()">JavaRuntime</a></code></span></div>
<div class="block">Get the set of class loaders active in this VM</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getJavaClassLoaders()">getJavaClassLoaders</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator of all of the class loaders within this JavaVM</dd>
<dt>See Also:</dt>
<dd><a href="../JavaClassLoader.html" title="interface in com.ibm.dtfj.java"><code>JavaClassLoader</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getThreads()">
<h3>getThreads</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getThreads</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getThreads()">JavaRuntime</a></code></span></div>
<div class="block">Get the set of Java threads known by the VM</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getThreads()">getThreads</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator of the JavaThreads in the runtime</dd>
<dt>See Also:</dt>
<dd><a href="../JavaThread.html" title="interface in com.ibm.dtfj.java"><code>JavaThread</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCompiledMethods()">
<h3>getCompiledMethods</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getCompiledMethods</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getCompiledMethods()">JavaRuntime</a></code></span></div>
<div class="block">This is short cut method. The same result can be found by iterating over all
methods in all class loaders in all classes.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getCompiledMethods()">getCompiledMethods</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator over all of the JavaMethods in the JavaRuntime which
have been compiled</dd>
<dt>See Also:</dt>
<dd><a href="../JavaMethod.html" title="interface in com.ibm.dtfj.java"><code>JavaMethod</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMonitors()">
<h3>getMonitors</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getMonitors</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getMonitors()">JavaRuntime</a></code></span></div>
<div class="block">Provides access to the collection of monitors used in the JavaVM. This
collection includes both monitors associated with managed objects (e.g. object
monitors) and monitors associated with internal control structures (e.g.
raw monitors)</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getMonitors()">getMonitors</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator over the collection of monitors</dd>
<dt>See Also:</dt>
<dd><a href="../JavaMonitor.html" title="interface in com.ibm.dtfj.java"><code>JavaMonitor</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getHeaps()">
<h3>getHeaps</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getHeaps</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getHeaps()">JavaRuntime</a></code></span></div>
<div class="block">Get the set of heaps known by the VM</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getHeaps()">getHeaps</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator for all of the Java heaps within this runtime. Heaps
may be specific to this JavaVM instance, or may be shared between multiple
JavaVM instances</dd>
<dt>See Also:</dt>
<dd><a href="../JavaHeap.html" title="interface in com.ibm.dtfj.java"><code>JavaHeap</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTraceBuffer(java.lang.String,boolean)">
<h3>getTraceBuffer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></span>&nbsp;<span class="element-name">getTraceBuffer</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;bufferName,
boolean&nbsp;formatted)</span>
throws <span class="exceptions"><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getTraceBuffer(java.lang.String,boolean)">JavaRuntime</a></code></span></div>
<div class="block">Fetches implementation specific trace buffers, like the verbose GC buffer
or the Universal Trace Engine (UTE) buffer</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getTraceBuffer(java.lang.String,boolean)">getTraceBuffer</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Parameters:</dt>
<dd><code>bufferName</code> - a String naming the buffer to be fetched</dd>
<dd><code>formatted</code> - true if formatting should be performed on the buffer, or
false if the raw buffer contents should be returned</dd>
<dt>Returns:</dt>
<dd>an implementation specific result, depending on the parameters</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getFullVersion()">
<h3>getFullVersion</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></span>&nbsp;<span class="element-name">getFullVersion</span>()
throws <span class="exceptions"><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../../runtime/ManagedRuntime.html#getFullVersion()">ManagedRuntime</a></code></span></div>
<div class="block">Get the 'full' version information for this runtime.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../runtime/ManagedRuntime.html#getFullVersion()">getFullVersion</a></code>&nbsp;in interface&nbsp;<code><a href="../../runtime/ManagedRuntime.html" title="interface in com.ibm.dtfj.runtime">ManagedRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>a string representation of the version information for this runtime instance</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - If the runtime presents no understandable version data</dd>
<dt>See Also:</dt>
<dd><a href="../../runtime/ManagedRuntime.html#getVersion()"><code>ManagedRuntime.getVersion()</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getVersion()">
<h3>getVersion</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></span>&nbsp;<span class="element-name">getVersion</span>()
throws <span class="exceptions"><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../../runtime/ManagedRuntime.html#getVersion()">ManagedRuntime</a></code></span></div>
<div class="block">Get the version data available for this runtime instance.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../../runtime/ManagedRuntime.html#getVersion()">getVersion</a></code>&nbsp;in interface&nbsp;<code><a href="../../runtime/ManagedRuntime.html" title="interface in com.ibm.dtfj.runtime">ManagedRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>a string representing all the version data available for this runtime instance.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - If the runtime presents no understandable version data</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addClass(com.ibm.dtfj.java.j9.JavaAbstractClass)">
<h3>addClass</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addClass</span>&#8203;<span class="parameters">(<a href="JavaAbstractClass.html" title="class in com.ibm.dtfj.java.j9">JavaAbstractClass</a>&nbsp;theClass)</span></div>
</section>
</li>
<li>
<section class="detail" id="addClassLoader(com.ibm.dtfj.java.j9.JavaClassLoader)">
<h3>addClassLoader</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addClassLoader</span>&#8203;<span class="parameters">(<a href="JavaClassLoader.html" title="class in com.ibm.dtfj.java.j9">JavaClassLoader</a>&nbsp;loader)</span></div>
</section>
</li>
<li>
<section class="detail" id="getClassForID(long)">
<h3>getClassForID</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../JavaClass.html" title="interface in com.ibm.dtfj.java">JavaClass</a></span>&nbsp;<span class="element-name">getClassForID</span>&#8203;<span class="parameters">(long&nbsp;classID)</span></div>
</section>
</li>
<li>
<section class="detail" id="getClassLoaderForID(long)">
<h3>getClassLoaderForID</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../JavaClassLoader.html" title="interface in com.ibm.dtfj.java">JavaClassLoader</a></span>&nbsp;<span class="element-name">getClassLoaderForID</span>&#8203;<span class="parameters">(long&nbsp;loaderID)</span></div>
</section>
</li>
<li>
<section class="detail" id="addMonitor(com.ibm.dtfj.java.j9.JavaMonitor)">
<h3>addMonitor</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addMonitor</span>&#8203;<span class="parameters">(<a href="JavaMonitor.html" title="class in com.ibm.dtfj.java.j9">JavaMonitor</a>&nbsp;monitor)</span></div>
</section>
</li>
<li>
<section class="detail" id="addHeap(com.ibm.dtfj.java.j9.JavaHeap)">
<h3>addHeap</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addHeap</span>&#8203;<span class="parameters">(<a href="JavaHeap.html" title="class in com.ibm.dtfj.java.j9">JavaHeap</a>&nbsp;heap)</span></div>
</section>
</li>
<li>
<section class="detail" id="addHeapRoot(com.ibm.dtfj.java.j9.JavaReference)">
<h3>addHeapRoot</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addHeapRoot</span>&#8203;<span class="parameters">(<a href="JavaReference.html" title="class in com.ibm.dtfj.java.j9">JavaReference</a>&nbsp;heapRoot)</span></div>
</section>
</li>
<li>
<section class="detail" id="addThread(com.ibm.dtfj.java.j9.JavaThread,long,long)">
<h3>addThread</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addThread</span>&#8203;<span class="parameters">(<a href="JavaThread.html" title="class in com.ibm.dtfj.java.j9">JavaThread</a>&nbsp;thread,
long&nbsp;blockedOnMonitor,
long&nbsp;waitingOnMonitor)</span></div>
<div class="block">Adds a JavaThread to the runtime along with optional IDs of monitors that it is blocked on or waiting on</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>thread</code> - The JavaThread to add to the runtime</dd>
<dd><code>blockedOnMonitor</code> - The ID of the monitor that this thread is blocked on (0 if it is not blocked)</dd>
<dd><code>waitingOnMonitor</code> - The ID of the monitor that this thread is waiting on (0 if it is not waiting)</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setTraceBufferForName(com.ibm.dtfj.java.j9.TraceBuffer,java.lang.String)">
<h3>setTraceBufferForName</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setTraceBufferForName</span>&#8203;<span class="parameters">(<a href="TraceBuffer.html" title="class in com.ibm.dtfj.java.j9">TraceBuffer</a>&nbsp;buffer,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key)</span></div>
</section>
</li>
<li>
<section class="detail" id="getSystemProperty(java.lang.String)">
<h3>getSystemProperty</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></span>&nbsp;<span class="element-name">getSystemProperty</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getSystemProperty(java.lang.String)">JavaRuntime</a></code></span></div>
<div class="block">Get a system property of the virtual machine.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getSystemProperty(java.lang.String)">getSystemProperty</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Parameters:</dt>
<dd><code>key</code> - the name of the property to retrieve</dd>
<dt>Returns:</dt>
<dd>the value of the requested system property from this VM</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSystemProperty(java.lang.String,java.lang.String)">
<h3>getSystemProperty</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a></span>&nbsp;<span class="element-name">getSystemProperty</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;defaultValue)</span></div>
</section>
</li>
<li>
<section class="detail" id="setSystemProperty(java.lang.String,java.lang.String)">
<h3>setSystemProperty</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">setSystemProperty</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;key,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link" target="_blank">String</a>&nbsp;value)</span></div>
</section>
</li>
<li>
<section class="detail" id="equals(java.lang.Object)">
<h3>equals</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">equals</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a>&nbsp;obj)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from class:&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank">java.lang.Object</a></code></span></div>
<div class="block">Compares the argument to the receiver, and answers true
if they represent the <em>same</em> object using a class
specific comparison. The implementation in Object answers
true only if the argument is the exact same object as the
receiver (==).</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#equals(java.lang.Object)">equals</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></code></dd>
<dt>Parameters:</dt>
<dd><code>obj</code> - Object
the object to compare with this object.</dd>
<dt>Returns:</dt>
<dd>boolean
<code>true</code>
if the object is the same as this object
<code>false</code>
if it is different from this object.</dd>
<dt>See Also:</dt>
<dd><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank"><code>Object.hashCode()</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hashCode()">
<h3>hashCode</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">hashCode</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from class:&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank">java.lang.Object</a></code></span></div>
<div class="block">Answers an integer hash code for the receiver. Any two
objects which answer <code>true</code> when passed to
<code>.equals</code> must answer the same value for this
method.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#hashCode()">hashCode</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></code></dd>
<dt>Returns:</dt>
<dd>the receiver's hash.</dd>
<dt>See Also:</dt>
<dd><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank"><code>Object.equals(java.lang.Object)</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getJavaVMInitArgs()">
<h3>getJavaVMInitArgs</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../JavaVMInitArgs.html" title="interface in com.ibm.dtfj.java">JavaVMInitArgs</a></span>&nbsp;<span class="element-name">getJavaVMInitArgs</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a>,
<a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getJavaVMInitArgs()">JavaRuntime</a></code></span></div>
<div class="block">Fetch the JavaVMInitArgs which were used to create this VM.
See JNI_CreateJavaVM in the JNI Specification for more details.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getJavaVMInitArgs()">getJavaVMInitArgs</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>the JavaVMInitArgs which were used to create this VM.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - if the arguments are not available</dd>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="pointerInAddressSpace(long)">
<h3>pointerInAddressSpace</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a></span>&nbsp;<span class="element-name">pointerInAddressSpace</span>&#8203;<span class="parameters">(long&nbsp;id)</span></div>
<div class="block">Since a JavaVM cannot span address spaces, use the VM's container address space to build this pointer, given the raw ID</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>id</code> - </dd>
<dt>Returns:</dt>
</dl>
</section>
</li>
<li>
<section class="detail" id="nativeThreadForID(long)">
<h3>nativeThreadForID</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../image/ImageThread.html" title="interface in com.ibm.dtfj.image">ImageThread</a></span>&nbsp;<span class="element-name">nativeThreadForID</span>&#8203;<span class="parameters">(long&nbsp;nativeID)</span></div>
</section>
</li>
<li>
<section class="detail" id="methodForID(long)">
<h3>methodForID</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="JavaMethod.html" title="class in com.ibm.dtfj.java.j9">JavaMethod</a></span>&nbsp;<span class="element-name">methodForID</span>&#8203;<span class="parameters">(long&nbsp;method)</span></div>
</section>
</li>
<li>
<section class="detail" id="addMethodForID(com.ibm.dtfj.java.j9.JavaMethod,long)">
<h3>addMethodForID</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addMethodForID</span>&#8203;<span class="parameters">(<a href="JavaMethod.html" title="class in com.ibm.dtfj.java.j9">JavaMethod</a>&nbsp;method,
long&nbsp;id)</span></div>
</section>
</li>
<li>
<section class="detail" id="createJavaVMInitArgs(int,boolean)">
<h3>createJavaVMInitArgs</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="JavaVMInitArgs.html" title="class in com.ibm.dtfj.java.j9">JavaVMInitArgs</a></span>&nbsp;<span class="element-name">createJavaVMInitArgs</span>&#8203;<span class="parameters">(int&nbsp;version,
boolean&nbsp;ignoreUnrecognized)</span></div>
</section>
</li>
<li>
<section class="detail" id="bytesPerPointer()">
<h3>bytesPerPointer</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">bytesPerPointer</span>()</div>
<div class="block">A helper method required by some of the structures hanging off of the VM. Returns the number of bytes required to express a native
pointer on the VM target platform</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>4 or 8, depending on the pointer size of the target platform</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClasses()">
<h3>getClasses</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getClasses</span>()</div>
</section>
</li>
<li>
<section class="detail" id="getHeapRoots()">
<h3>getHeapRoots</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getHeapRoots</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getHeapRoots()">JavaRuntime</a></code></span></div>
<div class="block">Get the set of object and class roots known to the VM.
Stack frame roots are not included in the set, they can be retrieved using JavaStackFrame.getHeapRoots().</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getHeapRoots()">getHeapRoots</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>an iterator over the collection of JavaReferences representing the known global heap roots within this runtime.</dd>
<dt>See Also:</dt>
<dd><a href="../JavaReference.html" title="interface in com.ibm.dtfj.java"><code>JavaReference</code></a>,
<a href="../JavaStackFrame.html" title="interface in com.ibm.dtfj.java"><code>JavaStackFrame</code></a>,
<a href="../../image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getObjectAtAddress(com.ibm.dtfj.image.ImagePointer)">
<h3>getObjectAtAddress</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></span>&nbsp;<span class="element-name">getObjectAtAddress</span>&#8203;<span class="parameters">(<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;address)</span>
throws <span class="exceptions"><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a>,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link" target="_blank">IllegalArgumentException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getObjectAtAddress(com.ibm.dtfj.image.ImagePointer)">JavaRuntime</a></code></span></div>
<div class="block">Gets the object located at address <code>address</code> in the heap.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getObjectAtAddress(com.ibm.dtfj.image.ImagePointer)">getObjectAtAddress</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Parameters:</dt>
<dd><code>address</code> - the <code>ImagePointer</code> instance representing the start address of object in the heap;</dd>
<dt>Returns:</dt>
<dd>the <code>JavaObject</code> instance representing the located object.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - if any data needed to build the returned instance of <code>JavaObject</code> is corrupt.</dd>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link" target="_blank">IllegalArgumentException</a></code> - if <code>address</code> is outside the heap's boundaries, or if it doesn't point to the start location of an object;</dd>
<dt>See Also:</dt>
<dd><a href="../JavaObject.html" title="interface in com.ibm.dtfj.java"><code>JavaObject</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addSpecialObject(com.ibm.dtfj.java.JavaObject)">
<h3>addSpecialObject</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addSpecialObject</span>&#8203;<span class="parameters">(<a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a>&nbsp;obj)</span></div>
</section>
</li>
<li>
<section class="detail" id="getSpecialObject(com.ibm.dtfj.image.ImagePointer)">
<h3>getSpecialObject</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></span>&nbsp;<span class="element-name">getSpecialObject</span>&#8203;<span class="parameters">(<a href="../../image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;address)</span></div>
</section>
</li>
<li>
<section class="detail" id="getMemoryCategories()">
<h3>getMemoryCategories</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getMemoryCategories</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getMemoryCategories()">JavaRuntime</a></code></span></div>
<div class="block">Returns iterator of the top-level memory categories used by this
Java runtime.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getMemoryCategories()">getMemoryCategories</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>Iterator of memory categories</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code></dd>
<dt>See Also:</dt>
<dd><a href="../JavaRuntimeMemoryCategory.html" title="interface in com.ibm.dtfj.java"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMemorySections(boolean)">
<h3>getMemorySections</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link" target="_blank">Iterator</a></span>&nbsp;<span class="element-name">getMemorySections</span>&#8203;<span class="parameters">(boolean&nbsp;includeFreed)</span>
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getMemorySections(boolean)">JavaRuntime</a></code></span></div>
<div class="block">Returns an iterator of JavaRuntimeMemorySection objects corresponding to the blocks of memory allocated by the JavaRuntime.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getMemorySections(boolean)">getMemorySections</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Parameters:</dt>
<dd><code>includeFreed</code> - If true, iterator will iterate over blocks of memory that have been freed, but haven't been re-used yet.</dd>
<dt>Returns:</dt>
<dd>Iterator of memory sections.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code></dd>
<dt>See Also:</dt>
<dd><a href="../JavaRuntimeMemorySection.html" title="interface in com.ibm.dtfj.java"><code>CorruptData</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isJITEnabled()">
<h3>isJITEnabled</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isJITEnabled</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a>,
<a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#isJITEnabled()">JavaRuntime</a></code></span></div>
<div class="block">Determine if the JIT was enabled for this Java runtime.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#isJITEnabled()">isJITEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>true if the JIT was enabled, false if not</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - if it is not possible to determine the JIT status</dd>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getJITProperties()">
<h3>getJITProperties</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Properties.html" title="class or interface in java.util" class="external-link" target="_blank">Properties</a></span>&nbsp;<span class="element-name">getJITProperties</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a>,
<a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getJITProperties()">JavaRuntime</a></code></span></div>
<div class="block">Get any vendor specific properties in use by the JIT for this Java runtime</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getJITProperties()">getJITProperties</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>the set of properties, which may be empty if none were set.</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - if the JIT was not enabled for this runtime</dd>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getStartTime()">
<h3>getStartTime</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getStartTime</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a>,
<a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getStartTime()">JavaRuntime</a></code></span></div>
<div class="block">Get the time when the JVM was started.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getStartTime()">getStartTime</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>the time the JVM was started, in milliseconds since 1970</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - if the JVM start time is not available</dd>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - if the JVM start time is corrupted</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getStartTimeNanos()">
<h3>getStartTimeNanos</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">getStartTimeNanos</span>()
throws <span class="exceptions"><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a>,
<a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../JavaRuntime.html#getStartTimeNanos()">JavaRuntime</a></code></span></div>
<div class="block">Get the value of the JVM's high-resolution timer when the JVM was started.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../JavaRuntime.html#getStartTimeNanos()">getStartTimeNanos</a></code>&nbsp;in interface&nbsp;<code><a href="../JavaRuntime.html" title="interface in com.ibm.dtfj.java">JavaRuntime</a></code></dd>
<dt>Returns:</dt>
<dd>the value of the high-resolution timer when the JVM was started, in nanoseconds</dd>
<dt>Throws:</dt>
<dd><code><a href="../../image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - if the JVM start time is not available</dd>
<dd><code><a href="../../image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - if the JVM start time is corrupted</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><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/openj9/issues" target="_blank">Eclipse Openj9 issue.</a><br> Copyright &copy; 1998, 2021, IBM Corp. and others.</small></p>
</footer>
</div>
</div>
</body>
</html>