blob: d27c7c4797014fa5c3ac9d311e3a3d6e0d56cfc1 [file] [log] [blame]
<!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 -->
<title>JavaThread (Diagnostic Tool Framework for Java&amp;trade;)</title>
<meta name="keywords" content="com.ibm.dtfj.java.JavaThread interface">
<meta name="keywords" content="STATE_ALIVE">
<meta name="keywords" content="STATE_TERMINATED">
<meta name="keywords" content="STATE_RUNNABLE">
<meta name="keywords" content="STATE_WAITING_INDEFINITELY">
<meta name="keywords" content="STATE_WAITING_WITH_TIMEOUT">
<meta name="keywords" content="STATE_SLEEPING">
<meta name="keywords" content="STATE_WAITING">
<meta name="keywords" content="STATE_IN_OBJECT_WAIT">
<meta name="keywords" content="STATE_PARKED">
<meta name="keywords" content="STATE_BLOCKED_ON_MONITOR_ENTER">
<meta name="keywords" content="STATE_SUSPENDED">
<meta name="keywords" content="STATE_INTERRUPTED">
<meta name="keywords" content="STATE_IN_NATIVE">
<meta name="keywords" content="STATE_VENDOR_1">
<meta name="keywords" content="STATE_VENDOR_2">
<meta name="keywords" content="STATE_VENDOR_3">
<meta name="keywords" content="getJNIEnv()">
<meta name="keywords" content="getPriority()">
<meta name="keywords" content="getObject()">
<meta name="keywords" content="getState()">
<meta name="keywords" content="getImageThread()">
<meta name="keywords" content="getStackSections()">
<meta name="keywords" content="getStackFrames()">
<meta name="keywords" content="getName()">
<meta name="keywords" content="getBlockingObject()">
<meta name="keywords" content="equals()">
<meta name="keywords" content="hashCode()">
<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="JavaThread (Diagnostic Tool Framework for Java&trade;)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/JavaThread.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>Diagnostic Tool Framework for Java&trade;</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/ibm/dtfj/java/JavaStackFrame.html" title="interface in com.ibm.dtfj.java"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/ibm/dtfj/java/JavaVMInitArgs.html" title="interface in com.ibm.dtfj.java"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/ibm/dtfj/java/JavaThread.html" target="_top">Frames</a></li>
<li><a href="JavaThread.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.ibm.dtfj.java</div>
<h2 title="Interface JavaThread" class="title">Interface JavaThread</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">JavaThread</span></pre>
<div class="block">Represents a Java thread.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../com/ibm/dtfj/java/JavaRuntime.html#getThreads--"><code>JavaRuntime.getThreads()</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_ALIVE">STATE_ALIVE</a></span></code>
<div class="block">The thread is alive</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_BLOCKED_ON_MONITOR_ENTER">STATE_BLOCKED_ON_MONITOR_ENTER</a></span></code>
<div class="block">The thread is waiting to enter an object monitor</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_IN_NATIVE">STATE_IN_NATIVE</a></span></code>
<div class="block">The thread is in native code</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_IN_OBJECT_WAIT">STATE_IN_OBJECT_WAIT</a></span></code>
<div class="block">The thread is in Object.wait</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_INTERRUPTED">STATE_INTERRUPTED</a></span></code>
<div class="block">The thread has a pending interrupt</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_PARKED">STATE_PARKED</a></span></code>
<div class="block">The thread has been deliberately removed from scheduling</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_RUNNABLE">STATE_RUNNABLE</a></span></code>
<div class="block">The thread can be run although may not be actually running</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_SLEEPING">STATE_SLEEPING</a></span></code>
<div class="block">The thread is in the Thread.sleep method</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_SUSPENDED">STATE_SUSPENDED</a></span></code>
<div class="block">The thread has been suspended by Thread.suspend</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_TERMINATED">STATE_TERMINATED</a></span></code>
<div class="block">The thread has terminated</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_VENDOR_1">STATE_VENDOR_1</a></span></code>
<div class="block">The thread is in a vendor specific state</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_VENDOR_2">STATE_VENDOR_2</a></span></code>
<div class="block">The thread is in a vendor specific state</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_VENDOR_3">STATE_VENDOR_3</a></span></code>
<div class="block">The thread is in a vendor specific state</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_WAITING">STATE_WAITING</a></span></code>
<div class="block">The thread is in a waiting state in native code</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_WAITING_INDEFINITELY">STATE_WAITING_INDEFINITELY</a></span></code>
<div class="block">The thread is waiting on a monitor with no timeout value set</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#STATE_WAITING_WITH_TIMEOUT">STATE_WAITING_WITH_TIMEOUT</a></span></code>
<div class="block">The thread is waiting on a monitor but will timeout at some point</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#equals-java.lang.Object-">equals</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" target="_blank" title="class or interface in java.lang">Object</a>&nbsp;obj)</code>
<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>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../com/ibm/dtfj/java/JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getBlockingObject--">getBlockingObject</a></span>()</code>
<div class="block">For threads that are in STATE_BLOCKED_ON_MONITOR_ENTER this method returns the JavaObject who's monitor they are blocked on.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../com/ibm/dtfj/image/ImageThread.html" title="interface in com.ibm.dtfj.image">ImageThread</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getImageThread--">getImageThread</a></span>()</code>
<div class="block">Represents the joining point between the Java view of execution and the corresponding native view.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../com/ibm/dtfj/image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getJNIEnv--">getJNIEnv</a></span>()</code>
<div class="block">Get the address of the JNIEnv structure which represents this thread instance in JNI.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" target="_blank" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getName--">getName</a></span>()</code>
<div class="block">Return the name of the thread.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../com/ibm/dtfj/java/JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getObject--">getObject</a></span>()</code>
<div class="block">Fetch the java.lang.Thread associated with this thread.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getPriority--">getPriority</a></span>()</code>
<div class="block">Get the Java priority of the thread.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" target="_blank" title="class or interface in java.util">Iterator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getStackFrames--">getStackFrames</a></span>()</code>
<div class="block">Get the set of stack frames.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" target="_blank" title="class or interface in java.util">Iterator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getStackSections--">getStackSections</a></span>()</code>
<div class="block">Get the set of ImageSections which make up the managed stack.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#getState--">getState</a></span>()</code>
<div class="block">Get the state of the thread when the image was created.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/ibm/dtfj/java/JavaThread.html#hashCode--">hashCode</a></span>()</code>
<div class="block">Answers an integer hash code for the receiver.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="STATE_ALIVE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_ALIVE</h4>
<pre>static final&nbsp;int STATE_ALIVE</pre>
<div class="block">The thread is alive</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_ALIVE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_TERMINATED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_TERMINATED</h4>
<pre>static final&nbsp;int STATE_TERMINATED</pre>
<div class="block">The thread has terminated</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_TERMINATED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_RUNNABLE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_RUNNABLE</h4>
<pre>static final&nbsp;int STATE_RUNNABLE</pre>
<div class="block">The thread can be run although may not be actually running</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_RUNNABLE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_WAITING_INDEFINITELY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_WAITING_INDEFINITELY</h4>
<pre>static final&nbsp;int STATE_WAITING_INDEFINITELY</pre>
<div class="block">The thread is waiting on a monitor with no timeout value set</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_WAITING_INDEFINITELY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_WAITING_WITH_TIMEOUT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_WAITING_WITH_TIMEOUT</h4>
<pre>static final&nbsp;int STATE_WAITING_WITH_TIMEOUT</pre>
<div class="block">The thread is waiting on a monitor but will timeout at some point</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_WAITING_WITH_TIMEOUT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_SLEEPING">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_SLEEPING</h4>
<pre>static final&nbsp;int STATE_SLEEPING</pre>
<div class="block">The thread is in the Thread.sleep method</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_SLEEPING">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_WAITING">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_WAITING</h4>
<pre>static final&nbsp;int STATE_WAITING</pre>
<div class="block">The thread is in a waiting state in native code</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_WAITING">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_IN_OBJECT_WAIT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_IN_OBJECT_WAIT</h4>
<pre>static final&nbsp;int STATE_IN_OBJECT_WAIT</pre>
<div class="block">The thread is in Object.wait</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_IN_OBJECT_WAIT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_PARKED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_PARKED</h4>
<pre>static final&nbsp;int STATE_PARKED</pre>
<div class="block">The thread has been deliberately removed from scheduling</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_PARKED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_BLOCKED_ON_MONITOR_ENTER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_BLOCKED_ON_MONITOR_ENTER</h4>
<pre>static final&nbsp;int STATE_BLOCKED_ON_MONITOR_ENTER</pre>
<div class="block">The thread is waiting to enter an object monitor</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_BLOCKED_ON_MONITOR_ENTER">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_SUSPENDED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_SUSPENDED</h4>
<pre>static final&nbsp;int STATE_SUSPENDED</pre>
<div class="block">The thread has been suspended by Thread.suspend</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_SUSPENDED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_INTERRUPTED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_INTERRUPTED</h4>
<pre>static final&nbsp;int STATE_INTERRUPTED</pre>
<div class="block">The thread has a pending interrupt</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_INTERRUPTED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_IN_NATIVE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_IN_NATIVE</h4>
<pre>static final&nbsp;int STATE_IN_NATIVE</pre>
<div class="block">The thread is in native code</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_IN_NATIVE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_VENDOR_1">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_VENDOR_1</h4>
<pre>static final&nbsp;int STATE_VENDOR_1</pre>
<div class="block">The thread is in a vendor specific state</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_VENDOR_1">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_VENDOR_2">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STATE_VENDOR_2</h4>
<pre>static final&nbsp;int STATE_VENDOR_2</pre>
<div class="block">The thread is in a vendor specific state</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_VENDOR_2">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="STATE_VENDOR_3">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>STATE_VENDOR_3</h4>
<pre>static final&nbsp;int STATE_VENDOR_3</pre>
<div class="block">The thread is in a vendor specific state</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#com.ibm.dtfj.java.JavaThread.STATE_VENDOR_3">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getJNIEnv--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJNIEnv</h4>
<pre><a href="../../../../com/ibm/dtfj/image/ImagePointer.html" title="interface in com.ibm.dtfj.image">ImagePointer</a>&nbsp;getJNIEnv()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></pre>
<div class="block">Get the address of the JNIEnv structure which represents this thread instance in JNI.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the address of the JNIEnv structure which represents this thread instance in JNI</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPriority--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPriority</h4>
<pre>int&nbsp;getPriority()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></pre>
<div class="block">Get the Java priority of the thread.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Java priority of the thread (a number between 1 and 10 inclusive)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true#getPriority--" title="class or interface in java.lang"><code>Thread.getPriority()</code></a></dd>
</dl>
</li>
</ul>
<a name="getObject--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getObject</h4>
<pre><a href="../../../../com/ibm/dtfj/java/JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a>&nbsp;getObject()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></pre>
<div class="block">Fetch the java.lang.Thread associated with this thread. If the thread is in the process
of being attached, this may return null.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the a JavaObject representing the java.lang.Thread associated with this thread</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../com/ibm/dtfj/java/JavaObject.html" title="interface in com.ibm.dtfj.java"><code>JavaObject</code></a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.html?is-external=true" target="_blank" title="class or interface in java.lang"><code>Thread</code></a></dd>
</dl>
</li>
</ul>
<a name="getState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getState</h4>
<pre>int&nbsp;getState()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></pre>
<div class="block">Get the state of the thread when the image was created.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the state of the thread when the image was created.
The result is a bit vector, and uses the states defined by
the JVMTI specification.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a name="getImageThread--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getImageThread</h4>
<pre><a href="../../../../com/ibm/dtfj/image/ImageThread.html" title="interface in com.ibm.dtfj.image">ImageThread</a>&nbsp;getImageThread()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a>,
<a href="../../../../com/ibm/dtfj/image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></pre>
<div class="block">Represents the joining point between the Java view of execution and the corresponding native view.
This method is where the mapping from Java into native threading resources is provided.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the ImageThread which this ManagedThread is currently bound to.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code> - If the underlying resource describing the native representation of the thread
is damaged</dd>
<dd><code><a href="../../../../com/ibm/dtfj/image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code> - If no mapping is provided due to missing or limited underlying resources (this
exception added in DTFJ 1.1)</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../com/ibm/dtfj/image/ImageThread.html" title="interface in com.ibm.dtfj.image"><code>ImageThread</code></a></dd>
</dl>
</li>
</ul>
<a name="getStackSections--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStackSections</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" target="_blank" title="class or interface in java.util">Iterator</a>&nbsp;getStackSections()</pre>
<div class="block">Get the set of ImageSections which make up the managed stack.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a collection of ImageSections which make up the managed stack.
<p>
Some Runtime implementations may also use parts of the ImageThread's stack
for ManagesStackFrames</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../com/ibm/dtfj/image/ImageSection.html" title="interface in com.ibm.dtfj.image"><code>ImageSection</code></a>,
<a href="../../../../com/ibm/dtfj/image/ImageThread.html#getStackSections--"><code>ImageThread.getStackSections()</code></a>,
<a href="../../../../com/ibm/dtfj/image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</li>
</ul>
<a name="getStackFrames--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStackFrames</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Iterator.html?is-external=true" target="_blank" title="class or interface in java.util">Iterator</a>&nbsp;getStackFrames()</pre>
<div class="block">Get the set of stack frames.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an iterator to walk the managed stack frames in order from
top-of-stack (that is, the most recent frame) to bottom-of-stack</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../com/ibm/dtfj/java/JavaStackFrame.html" title="interface in com.ibm.dtfj.java"><code>JavaStackFrame</code></a>,
<a href="../../../../com/ibm/dtfj/image/CorruptData.html" title="interface in com.ibm.dtfj.image"><code>CorruptData</code></a></dd>
</dl>
</li>
</ul>
<a name="getName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" target="_blank" title="class or interface in java.lang">String</a>&nbsp;getName()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></pre>
<div class="block">Return the name of the thread.
Usually this is derived from the object associated with the thread, but if the
name cannot be derived this way (e.g. there is no object associated with the thread)
DTFJ will synthesize a name for the thread.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the name of the thread</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a name="getBlockingObject--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBlockingObject</h4>
<pre><a href="../../../../com/ibm/dtfj/java/JavaObject.html" title="interface in com.ibm.dtfj.java">JavaObject</a>&nbsp;getBlockingObject()
throws <a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a>,
<a href="../../../../com/ibm/dtfj/image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></pre>
<div class="block">For threads that are in STATE_BLOCKED_ON_MONITOR_ENTER this method returns the JavaObject who's monitor they are blocked on.
For threads that are in STATE_IN_OBJECT_WAIT this method returns the JavaObject that Object.wait() was called on.
For threads that are in STATE_PARKED this method returns the JavaObject that was passed as the "blocker" object to the java.util.concurrent.LockSupport.park() call. It may return null if no blocker object was passed.
For threads in any other state this call will return null.
The state of the thread can be determined by calling JavaThread.getState()</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the object this thread is waiting on or null.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../com/ibm/dtfj/image/CorruptDataException.html" title="class in com.ibm.dtfj.image">CorruptDataException</a></code></dd>
<dd><code><a href="../../../../com/ibm/dtfj/image/DataUnavailable.html" title="class in com.ibm.dtfj.image">DataUnavailable</a></code></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.6</dd>
</dl>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>boolean&nbsp;equals(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" target="_blank" title="class or interface in java.lang">Object</a>&nbsp;obj)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">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>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" target="_blank" title="class or interface in java.lang">Object</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>obj</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if the given object refers to the same Java Thread in the image</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang"><code>Object.hashCode()</code></a></dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>hashCode</h4>
<pre>int&nbsp;hashCode()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">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>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" target="_blank" title="class or interface in java.lang">Object</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the receiver's hash.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang"><code>Object.equals(java.lang.Object)</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= 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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/JavaThread.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>Diagnostic Tool Framework for Java&trade;</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/ibm/dtfj/java/JavaStackFrame.html" title="interface in com.ibm.dtfj.java"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/ibm/dtfj/java/JavaVMInitArgs.html" title="interface in com.ibm.dtfj.java"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/ibm/dtfj/java/JavaThread.html" target="_top">Frames</a></li>
<li><a href="JavaThread.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</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; 2004, 2020, IBM Corp. and others.</small></p>
</body>
</html>