<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Tue Mar 30 10:43:01 CDT 2021 -->
<title>QueuedThreadPool (Jetty :: Project 9.4.39.v20210325 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-03-30">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="QueuedThreadPool (Jetty :: Project 9.4.39.v20210325 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":42,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/QueuedThreadPool.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>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<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>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.util.thread</a></div>
<h2 title="Class QueuedThreadPool" class="title">Class QueuedThreadPool</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.AbstractLifeCycle</a></li>
<li>
<ul class="inheritance">
<li><a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.ContainerLifeCycle</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.util.thread.QueuedThreadPool</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.util.concurrent.Executor</code>, <code>java.util.concurrent.ThreadFactory</code>, <code><a href="../component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code>, <code><a href="../component/Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a></code>, <code><a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code>, <code><a href="../component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code>, <code><a href="../component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></code>, <code><a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></code>, <code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code>, <code><a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></code></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="MonitoredQueuedThreadPool.html" title="class in org.eclipse.jetty.util.thread">MonitoredQueuedThreadPool</a></code></dd>
</dl>
<hr>
<pre><a href="../annotation/ManagedObject.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedObject</a>("A thread pool")
public class <span class="typeNameLabel">QueuedThreadPool</span>
extends <a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a>
implements java.util.concurrent.ThreadFactory, <a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a>, <a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a>, <a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></pre>
<div class="block"><p>A thread pool with a queue of jobs to execute.</p>
 <p>Jetty components that need threads (such as network acceptors and selector) may lease threads
 from this thread pool using a <a href="ThreadPoolBudget.html" title="class in org.eclipse.jetty.util.thread"><code>ThreadPoolBudget</code></a>; these threads are "active" from the point
 of view of the thread pool, but not available to run <em>transient</em> jobs such as processing
 an HTTP request or a WebSocket frame.</p>
 <p>QueuedThreadPool has a <a href="ReservedThreadExecutor.html" title="class in org.eclipse.jetty.util.thread"><code>ReservedThreadExecutor</code></a> which leases threads from this pool,
 but makes them available as if they are "idle" threads.</p>
 <p>QueuedThreadPool therefore has the following <em>fundamental</em> values:</p>
 <ul>
   <li><a href="#getThreads()"><code>threads</code></a>: the current number of threads. These threads may execute
   a job (either internal or transient), or may be ready to run (either idle or reserved).
   This number may grow or shrink as the thread pool grows or shrinks.</li>
   <li><a href="#getReadyThreads()"><code>readyThreads</code></a>: the current number of threads that are ready to
   run transient jobs.
   This number may grow or shrink as the thread pool grows or shrinks.</li>
   <li><a href="#getLeasedThreads()"><code>leasedThreads</code></a>: the number of threads that run internal jobs.
   This number is typically constant after this thread pool is <a href="../component/AbstractLifeCycle.html#start()"><code>started</code></a>.</li>
 </ul>
 <p>Given the definitions above, the most interesting definitions are:</p>
 <ul>
   <li><a href="#getThreads()"><code>threads</code></a> = <a href="#getReadyThreads()"><code>readyThreads</code></a> + <a href="#getLeasedThreads()"><code>leasedThreads</code></a> + <a href="#getUtilizedThreads()"><code>utilizedThreads</code></a></li>
   <li>readyThreads = <a href="#getIdleThreads()"><code>idleThreads</code></a> + <a href="#getAvailableReservedThreads()"><code>availableReservedThreads</code></a></li>
   <li><a href="#getMaxAvailableThreads()"><code>maxAvailableThreads</code></a> = <a href="#getMaxThreads()"><code>maxThreads</code></a> - leasedThreads</li>
   <li><a href="#getUtilizationRate()"><code>utilizationRate</code></a> = utilizedThreads / maxAvailableThreads</li>
 </ul>
 <p>Other definitions, typically less interesting because they take into account threads that
 execute internal jobs, or because they don't take into account available reserved threads
 (that are essentially ready to execute transient jobs), are:</p>
 <ul>
   <li><a href="#getBusyThreads()"><code>busyThreads</code></a> = utilizedThreads + leasedThreads</li>
   <li><a href="#getIdleThreads()"><code>getIdleThreads()</code></a> idleThreads} = readyThreads - availableReservedThreads</li>
 </ul></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../component/AbstractLifeCycle.AbstractLifeCycleListener.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle.AbstractLifeCycleListener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Container">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></h3>
<code><a href="../component/Container.InheritedListener.html" title="interface in org.eclipse.jetty.util.component">Container.InheritedListener</a>, <a href="../component/Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="../component/LifeCycle.Listener.html" title="interface in org.eclipse.jetty.util.component">LifeCycle.Listener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.thread.ThreadPool">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.thread.<a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></h3>
<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.thread.TryExecutor">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.thread.<a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></h3>
<code><a href="TryExecutor.NoTryExecutor.html" title="class in org.eclipse.jetty.util.thread">TryExecutor.NoTryExecutor</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../component/AbstractLifeCycle.html#FAILED">FAILED</a>, <a href="../component/AbstractLifeCycle.html#RUNNING">RUNNING</a>, <a href="../component/AbstractLifeCycle.html#STARTED">STARTED</a>, <a href="../component/AbstractLifeCycle.html#STARTING">STARTING</a>, <a href="../component/AbstractLifeCycle.html#STOPPED">STOPPED</a>, <a href="../component/AbstractLifeCycle.html#STOPPING">STOPPING</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../component/Dumpable.html#KEY">KEY</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.thread.TryExecutor">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.eclipse.jetty.util.thread.<a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></h3>
<code><a href="TryExecutor.html#NO_TRY">NO_TRY</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">QueuedThreadPool</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,int)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                int&nbsp;idleTimeout)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                int&nbsp;idleTimeout,
                int&nbsp;reservedThreads,
                java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                java.lang.ThreadGroup&nbsp;threadGroup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup,java.util.concurrent.ThreadFactory)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                int&nbsp;idleTimeout,
                int&nbsp;reservedThreads,
                java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                java.lang.ThreadGroup&nbsp;threadGroup,
                java.util.concurrent.ThreadFactory&nbsp;threadFactory)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,int,java.util.concurrent.BlockingQueue)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                int&nbsp;idleTimeout,
                java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                int&nbsp;idleTimeout,
                java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                java.lang.ThreadGroup&nbsp;threadGroup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,int,java.util.concurrent.BlockingQueue)">QueuedThreadPool</a></span>&#8203;(int&nbsp;maxThreads,
                int&nbsp;minThreads,
                java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStart()">doStart</a></span>()</code></th>
<td class="colLast">
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStop()">doStop</a></span>()</code></th>
<td class="colLast">
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dump(java.lang.Appendable,java.lang.String)">dump</a></span>&#8203;(java.lang.Appendable&nbsp;out,
    java.lang.String&nbsp;indent)</code></th>
<td class="colLast">
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dumpThread(long)">dumpThread</a></span>&#8203;(long&nbsp;id)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(java.lang.Runnable)">execute</a></span>&#8203;(java.lang.Runnable&nbsp;job)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAvailableReservedThreads()">getAvailableReservedThreads</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBusyThreads()">getBusyThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The number of threads executing internal and transient jobs.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdleThreads()">getIdleThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The number of idle threads, but without including reserved threads.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdleTimeout()">getIdleTimeout</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLeasedThreads()">getLeasedThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The <em>fundamental</em> value that represents the number of threads that are leased
 to internal components, and therefore cannot be used to execute transient jobs.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLowThreadsThreshold()">getLowThreadsThreshold</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxAvailableThreads()">getMaxAvailableThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The maximum number of threads available to run transient jobs.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxLeasedThreads()">getMaxLeasedThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The maximum number of threads that are leased to internal components,
 as some component may allocate its threads lazily.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxReservedThreads()">getMaxReservedThreads</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxThreads()">getMaxThreads</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMinThreads()">getMinThreads</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getName()">getName</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQueue()">getQueue</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQueueSize()">getQueueSize</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getReadyThreads()">getReadyThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The <em>fundamental</em> value that represents the number of threads ready to execute transient jobs.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getReservedThreads()">getReservedThreads</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="ThreadPoolBudget.html" title="class in org.eclipse.jetty.util.thread">ThreadPoolBudget</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getThreadPoolBudget()">getThreadPoolBudget</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getThreads()">getThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The <em>fundamental</em> value that represents the number of threads currently known by this thread pool.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getThreadsPriority()">getThreadsPriority</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUtilizationRate()">getUtilizationRate</a></span>()</code></th>
<td class="colLast">
<div class="block">The rate between the number of <a href="#getUtilizedThreads()"><code>utilized threads</code></a>
 and the maximum number of <a href="#getMaxAvailableThreads()"><code>utilizable threads</code></a>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUtilizedThreads()">getUtilizedThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">The number of threads executing transient jobs.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#interruptThread(long)">interruptThread</a></span>&#8203;(long&nbsp;id)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDaemon()">isDaemon</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDetailedDump()">isDetailedDump</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isLowOnThreads()">isLowOnThreads</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether this thread pool is low on threads.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join()">join</a></span>()</code></th>
<td class="colLast">
<div class="block">Blocks until the thread pool is <a href="../component/LifeCycle.html#stop()"><code>stopped</code></a>.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>java.lang.Thread</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newThread(java.lang.Runnable)">newThread</a></span>&#8203;(java.lang.Runnable&nbsp;runnable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeThread(java.lang.Thread)">removeThread</a></span>&#8203;(java.lang.Thread&nbsp;thread)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#runJob(java.lang.Runnable)">runJob</a></span>&#8203;(java.lang.Runnable&nbsp;job)</code></th>
<td class="colLast">
<div class="block">Runs the given job in the <code>current thread</code>.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDaemon(boolean)">setDaemon</a></span>&#8203;(boolean&nbsp;daemon)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDetailedDump(boolean)">setDetailedDump</a></span>&#8203;(boolean&nbsp;detailedDump)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setIdleTimeout(int)">setIdleTimeout</a></span>&#8203;(int&nbsp;idleTimeout)</code></th>
<td class="colLast">
<div class="block">Set the maximum thread idle time in ms.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLowThreadsThreshold(int)">setLowThreadsThreshold</a></span>&#8203;(int&nbsp;lowThreadsThreshold)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMaxThreads(int)">setMaxThreads</a></span>&#8203;(int&nbsp;maxThreads)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMinThreads(int)">setMinThreads</a></span>&#8203;(int&nbsp;minThreads)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(java.lang.String)">setName</a></span>&#8203;(java.lang.String&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Sets the name of this thread pool, used as a prefix for the thread names.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setQueue(java.util.concurrent.BlockingQueue)">setQueue</a></span>&#8203;(java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">pass the queue to the constructor instead</div>
</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setReservedThreads(int)">setReservedThreads</a></span>&#8203;(int&nbsp;reservedThreads)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setThreadPoolBudget(org.eclipse.jetty.util.thread.ThreadPoolBudget)">setThreadPoolBudget</a></span>&#8203;(<a href="ThreadPoolBudget.html" title="class in org.eclipse.jetty.util.thread">ThreadPoolBudget</a>&nbsp;budget)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setThreadsPriority(int)">setThreadsPriority</a></span>&#8203;(int&nbsp;priority)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startThread()">startThread</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tryExecute(java.lang.Runnable)">tryExecute</a></span>&#8203;(java.lang.Runnable&nbsp;task)</code></th>
<td class="colLast">
<div class="block">Attempt to execute a task.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.ContainerLifeCycle">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></h3>
<code><a href="../component/ContainerLifeCycle.html#addBean(java.lang.Object)">addBean</a>, <a href="../component/ContainerLifeCycle.html#addBean(java.lang.Object,boolean)">addBean</a>, <a href="../component/ContainerLifeCycle.html#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">addEventListener</a>, <a href="../component/ContainerLifeCycle.html#addManaged(org.eclipse.jetty.util.component.LifeCycle)">addManaged</a>, <a href="../component/ContainerLifeCycle.html#contains(java.lang.Object)">contains</a>, <a href="../component/ContainerLifeCycle.html#destroy()">destroy</a>, <a href="../component/ContainerLifeCycle.html#dump()">dump</a>, <a href="../component/ContainerLifeCycle.html#dump(java.lang.Appendable)">dump</a>, <a href="../component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String,java.util.Collection...)">dump</a>, <a href="../component/ContainerLifeCycle.html#dump(org.eclipse.jetty.util.component.Dumpable)">dump</a>, <a href="../component/ContainerLifeCycle.html#dumpBeans(java.lang.Appendable,java.lang.String,java.util.Collection...)">dumpBeans</a>, <a href="../component/ContainerLifeCycle.html#dumpObject(java.lang.Appendable,java.lang.Object)">dumpObject</a>, <a href="../component/ContainerLifeCycle.html#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)">dumpObjects</a>, <a href="../component/ContainerLifeCycle.html#dumpStdErr()">dumpStdErr</a>, <a href="../component/ContainerLifeCycle.html#dumpThis(java.lang.Appendable)">dumpThis</a>, <a href="../component/ContainerLifeCycle.html#getBean(java.lang.Class)">getBean</a>, <a href="../component/ContainerLifeCycle.html#getBeans()">getBeans</a>, <a href="../component/ContainerLifeCycle.html#getBeans(java.lang.Class)">getBeans</a>, <a href="../component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class)">getContainedBeans</a>, <a href="../component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class,java.util.Collection)">getContainedBeans</a>, <a href="../component/ContainerLifeCycle.html#isAuto(java.lang.Object)">isAuto</a>, <a href="../component/ContainerLifeCycle.html#isManaged(java.lang.Object)">isManaged</a>, <a href="../component/ContainerLifeCycle.html#isUnmanaged(java.lang.Object)">isUnmanaged</a>, <a href="../component/ContainerLifeCycle.html#manage(java.lang.Object)">manage</a>, <a href="../component/ContainerLifeCycle.html#removeBean(java.lang.Object)">removeBean</a>, <a href="../component/ContainerLifeCycle.html#removeBeans()">removeBeans</a>, <a href="../component/ContainerLifeCycle.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">removeEventListener</a>, <a href="../component/ContainerLifeCycle.html#setBeans(java.util.Collection)">setBeans</a>, <a href="../component/ContainerLifeCycle.html#setStopTimeout(long)">setStopTimeout</a>, <a href="../component/ContainerLifeCycle.html#start(org.eclipse.jetty.util.component.LifeCycle)">start</a>, <a href="../component/ContainerLifeCycle.html#stop(org.eclipse.jetty.util.component.LifeCycle)">stop</a>, <a href="../component/ContainerLifeCycle.html#unmanage(java.lang.Object)">unmanage</a>, <a href="../component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object)">updateBean</a>, <a href="../component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object,boolean)">updateBean</a>, <a href="../component/ContainerLifeCycle.html#updateBeans(java.lang.Object%5B%5D,java.lang.Object%5B%5D)">updateBeans</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../component/AbstractLifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../component/AbstractLifeCycle.html#getState()">getState</a>, <a href="../component/AbstractLifeCycle.html#getState(org.eclipse.jetty.util.component.LifeCycle)">getState</a>, <a href="../component/AbstractLifeCycle.html#getStopTimeout()">getStopTimeout</a>, <a href="../component/AbstractLifeCycle.html#isFailed()">isFailed</a>, <a href="../component/AbstractLifeCycle.html#isRunning()">isRunning</a>, <a href="../component/AbstractLifeCycle.html#isStarted()">isStarted</a>, <a href="../component/AbstractLifeCycle.html#isStarting()">isStarting</a>, <a href="../component/AbstractLifeCycle.html#isStopped()">isStopped</a>, <a href="../component/AbstractLifeCycle.html#isStopping()">isStopping</a>, <a href="../component/AbstractLifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../component/AbstractLifeCycle.html#start()">start</a>, <a href="../component/AbstractLifeCycle.html#stop()">stop</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3>
<code><a href="../component/Dumpable.html#dump()">dump</a>, <a href="../component/Dumpable.html#dumpSelf()">dumpSelf</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable.DumpableContainer">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></h3>
<code><a href="../component/Dumpable.DumpableContainer.html#isDumpable(java.lang.Object)">isDumpable</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool()</pre>
</li>
</ul>
<a id="&lt;init&gt;(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,java.util.concurrent.BlockingQueue)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("queue")
                        java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("idleTimeout")
                        int&nbsp;idleTimeout)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,int,java.util.concurrent.BlockingQueue)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("idleTimeout")
                        int&nbsp;idleTimeout,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("queue")
                        java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("idleTimeout")
                        int&nbsp;idleTimeout,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("queue")
                        java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("threadGroup")
                        java.lang.ThreadGroup&nbsp;threadGroup)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("idleTimeout")
                        int&nbsp;idleTimeout,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("reservedThreads")
                        int&nbsp;reservedThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("queue")
                        java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("threadGroup")
                        java.lang.ThreadGroup&nbsp;threadGroup)</pre>
</li>
</ul>
<a id="&lt;init&gt;(int,int,int,int,java.util.concurrent.BlockingQueue,java.lang.ThreadGroup,java.util.concurrent.ThreadFactory)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>QueuedThreadPool</h4>
<pre>public&nbsp;QueuedThreadPool&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("maxThreads")
                        int&nbsp;maxThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("minThreads")
                        int&nbsp;minThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("idleTimeout")
                        int&nbsp;idleTimeout,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("reservedThreads")
                        int&nbsp;reservedThreads,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("queue")
                        java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("threadGroup")
                        java.lang.ThreadGroup&nbsp;threadGroup,
                        <a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("threadFactory")
                        java.util.concurrent.ThreadFactory&nbsp;threadFactory)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="getThreadPoolBudget()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreadPoolBudget</h4>
<pre class="methodSignature">public&nbsp;<a href="ThreadPoolBudget.html" title="class in org.eclipse.jetty.util.thread">ThreadPoolBudget</a>&nbsp;getThreadPoolBudget()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.SizedThreadPool.html#getThreadPoolBudget()">getThreadPoolBudget</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a ThreadPoolBudget for this sized thread pool,
 or null of no ThreadPoolBudget can be returned</dd>
</dl>
</li>
</ul>
<a id="setThreadPoolBudget(org.eclipse.jetty.util.thread.ThreadPoolBudget)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setThreadPoolBudget</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setThreadPoolBudget&#8203;(<a href="ThreadPoolBudget.html" title="class in org.eclipse.jetty.util.thread">ThreadPoolBudget</a>&nbsp;budget)</pre>
</li>
</ul>
<a id="doStart()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStart</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStart()
                throws java.lang.Exception</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../component/ContainerLifeCycle.html#doStart()">ContainerLifeCycle</a></code></span></div>
<div class="block">Starts the managed lifecycle beans in the order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../component/ContainerLifeCycle.html#doStart()">doStart</a></code>&nbsp;in class&nbsp;<code><a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="doStop()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStop</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;doStop()
               throws java.lang.Exception</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../component/ContainerLifeCycle.html#doStop()">ContainerLifeCycle</a></code></span></div>
<div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../component/ContainerLifeCycle.html#doStop()">doStop</a></code>&nbsp;in class&nbsp;<code><a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code></dd>
</dl>
</li>
</ul>
<a id="getIdleTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdleTimeout</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("maximum time a thread may be idle in ms")
public&nbsp;int&nbsp;getIdleTimeout()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum thread idle time in ms</dd>
</dl>
</li>
</ul>
<a id="setIdleTimeout(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIdleTimeout</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setIdleTimeout&#8203;(int&nbsp;idleTimeout)</pre>
<div class="block"><p>Set the maximum thread idle time in ms.</p>
 <p>Threads that are idle for longer than this period may be stopped.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>idleTimeout</code> - the maximum thread idle time in ms</dd>
</dl>
</li>
</ul>
<a id="getMaxThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("maximum number of threads in the pool")
public&nbsp;int&nbsp;getMaxThreads()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.SizedThreadPool.html#getMaxThreads()">getMaxThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum number of threads</dd>
</dl>
</li>
</ul>
<a id="setMaxThreads(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxThreads</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMaxThreads&#8203;(int&nbsp;maxThreads)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.SizedThreadPool.html#setMaxThreads(int)">setMaxThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>maxThreads</code> - the maximum number of threads</dd>
</dl>
</li>
</ul>
<a id="getMinThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMinThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("minimum number of threads in the pool")
public&nbsp;int&nbsp;getMinThreads()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.SizedThreadPool.html#getMinThreads()">getMinThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the minimum number of threads</dd>
</dl>
</li>
</ul>
<a id="setMinThreads(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMinThreads</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMinThreads&#8203;(int&nbsp;minThreads)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.SizedThreadPool.html#setMinThreads(int)">setMinThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.SizedThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool.SizedThreadPool</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>minThreads</code> - minimum number of threads</dd>
</dl>
</li>
</ul>
<a id="getReservedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of configured reserved threads or -1 for heuristic")
public&nbsp;int&nbsp;getReservedThreads()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of reserved threads or -1 for heuristically determined</dd>
</dl>
</li>
</ul>
<a id="setReservedThreads(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setReservedThreads</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setReservedThreads&#8203;(int&nbsp;reservedThreads)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>reservedThreads</code> - number of reserved threads or -1 for heuristically determined</dd>
</dl>
</li>
</ul>
<a id="getName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("name of the thread pool")
public&nbsp;java.lang.String&nbsp;getName()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the name of the this thread pool</dd>
</dl>
</li>
</ul>
<a id="setName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setName&#8203;(java.lang.String&nbsp;name)</pre>
<div class="block"><p>Sets the name of this thread pool, used as a prefix for the thread names.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the this thread pool</dd>
</dl>
</li>
</ul>
<a id="getThreadsPriority()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreadsPriority</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("priority of threads in the pool")
public&nbsp;int&nbsp;getThreadsPriority()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the priority of the pool threads</dd>
</dl>
</li>
</ul>
<a id="setThreadsPriority(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setThreadsPriority</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setThreadsPriority&#8203;(int&nbsp;priority)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>priority</code> - the priority of the pool threads</dd>
</dl>
</li>
</ul>
<a id="isDaemon()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDaemon</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("thread pool uses daemon threads")
public&nbsp;boolean&nbsp;isDaemon()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether to use daemon threads</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>Thread.isDaemon()</code></dd>
</dl>
</li>
</ul>
<a id="setDaemon(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDaemon</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setDaemon&#8203;(boolean&nbsp;daemon)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>daemon</code> - whether to use daemon threads</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>Thread.setDaemon(boolean)</code></dd>
</dl>
</li>
</ul>
<a id="isDetailedDump()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDetailedDump</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("reports additional details in the dump")
public&nbsp;boolean&nbsp;isDetailedDump()</pre>
</li>
</ul>
<a id="setDetailedDump(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDetailedDump</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setDetailedDump&#8203;(boolean&nbsp;detailedDump)</pre>
</li>
</ul>
<a id="getLowThreadsThreshold()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLowThreadsThreshold</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("threshold at which the pool is low on threads")
public&nbsp;int&nbsp;getLowThreadsThreshold()</pre>
</li>
</ul>
<a id="setLowThreadsThreshold(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLowThreadsThreshold</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setLowThreadsThreshold&#8203;(int&nbsp;lowThreadsThreshold)</pre>
</li>
</ul>
<a id="getQueueSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueueSize</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("size of the job queue")
public&nbsp;int&nbsp;getQueueSize()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of jobs in the queue waiting for a thread</dd>
</dl>
</li>
</ul>
<a id="getMaxReservedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxReservedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("maximum number (capacity) of reserved threads")
public&nbsp;int&nbsp;getMaxReservedThreads()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum number (capacity) of reserved threads</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="ReservedThreadExecutor.html#getCapacity()"><code>ReservedThreadExecutor.getCapacity()</code></a></dd>
</dl>
</li>
</ul>
<a id="getAvailableReservedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAvailableReservedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of available reserved threads")
public&nbsp;int&nbsp;getAvailableReservedThreads()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of available reserved threads</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="ReservedThreadExecutor.html#getAvailable()"><code>ReservedThreadExecutor.getAvailable()</code></a></dd>
</dl>
</li>
</ul>
<a id="getThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of threads in the pool")
public&nbsp;int&nbsp;getThreads()</pre>
<div class="block"><p>The <em>fundamental</em> value that represents the number of threads currently known by this thread pool.</p>
 <p>This value includes threads that have been leased to internal components, idle threads, reserved threads
 and threads that are executing transient jobs.</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.html#getThreads()">getThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads currently known to the pool</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getReadyThreads()"><code>getReadyThreads()</code></a>, 
<a href="#getLeasedThreads()"><code>getLeasedThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getReadyThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReadyThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of threads ready to execute transient jobs")
public&nbsp;int&nbsp;getReadyThreads()</pre>
<div class="block"><p>The <em>fundamental</em> value that represents the number of threads ready to execute transient jobs.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads ready to execute transient jobs</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getThreads()"><code>getThreads()</code></a>, 
<a href="#getLeasedThreads()"><code>getLeasedThreads()</code></a>, 
<a href="#getUtilizedThreads()"><code>getUtilizedThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getLeasedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLeasedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of threads used by internal components")
public&nbsp;int&nbsp;getLeasedThreads()</pre>
<div class="block"><p>The <em>fundamental</em> value that represents the number of threads that are leased
 to internal components, and therefore cannot be used to execute transient jobs.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads currently used by internal components</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getThreads()"><code>getThreads()</code></a>, 
<a href="#getReadyThreads()"><code>getReadyThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getMaxLeasedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxLeasedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("maximum number of threads leased to internal components")
public&nbsp;int&nbsp;getMaxLeasedThreads()</pre>
<div class="block"><p>The maximum number of threads that are leased to internal components,
 as some component may allocate its threads lazily.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum number of threads leased by internal components</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getLeasedThreads()"><code>getLeasedThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getIdleThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdleThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of idle threads but not reserved")
public&nbsp;int&nbsp;getIdleThreads()</pre>
<div class="block"><p>The number of idle threads, but without including reserved threads.</p>
 <p>Prefer <a href="#getReadyThreads()"><code>getReadyThreads()</code></a> for a better representation of
 "threads ready to execute transient jobs".</p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.html#getIdleThreads()">getIdleThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of idle threads but not reserved</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getReadyThreads()"><code>getReadyThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getBusyThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBusyThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of threads executing internal and transient jobs")
public&nbsp;int&nbsp;getBusyThreads()</pre>
<div class="block"><p>The number of threads executing internal and transient jobs.</p>
 <p>Prefer <a href="#getUtilizedThreads()"><code>getUtilizedThreads()</code></a> for a better representation of
 "threads executing transient jobs".</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads executing internal and transient jobs</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getUtilizedThreads()"><code>getUtilizedThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getUtilizedThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUtilizedThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("number of threads executing transient jobs")
public&nbsp;int&nbsp;getUtilizedThreads()</pre>
<div class="block"><p>The number of threads executing transient jobs.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of threads executing transient jobs</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getReadyThreads()"><code>getReadyThreads()</code></a></dd>
</dl>
</li>
</ul>
<a id="getMaxAvailableThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxAvailableThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("maximum number of threads available to run transient jobs")
public&nbsp;int&nbsp;getMaxAvailableThreads()</pre>
<div class="block"><p>The maximum number of threads available to run transient jobs.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the maximum number of threads available to run transient jobs</dd>
</dl>
</li>
</ul>
<a id="getUtilizationRate()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUtilizationRate</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>("utilization rate of threads executing transient jobs")
public&nbsp;double&nbsp;getUtilizationRate()</pre>
<div class="block"><p>The rate between the number of <a href="#getUtilizedThreads()"><code>utilized threads</code></a>
 and the maximum number of <a href="#getMaxAvailableThreads()"><code>utilizable threads</code></a>.</p>
 <p>A value of <code>0.0D</code> means that the thread pool is not utilized, while a
 value of <code>1.0D</code> means that the thread pool is fully utilized to execute
 transient jobs.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the utilization rate of threads executing transient jobs</dd>
</dl>
</li>
</ul>
<a id="isLowOnThreads()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLowOnThreads</h4>
<pre class="methodSignature"><a href="../annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../annotation/ManagedAttribute.html#value()">value</a>="thread pool is low on threads",
                  <a href="../annotation/ManagedAttribute.html#readonly()">readonly</a>=true)
public&nbsp;boolean&nbsp;isLowOnThreads()</pre>
<div class="block"><p>Returns whether this thread pool is low on threads.</p>
 <p>The current formula is:</p>
 <pre>
 maxThreads - threads + readyThreads - queueSize &lt;= lowThreadsThreshold
 </pre></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.html#isLowOnThreads()">isLowOnThreads</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the pool is low on threads</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#getLowThreadsThreshold()"><code>getLowThreadsThreshold()</code></a></dd>
</dl>
</li>
</ul>
<a id="execute(java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;execute&#8203;(java.lang.Runnable&nbsp;job)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>execute</code>&nbsp;in interface&nbsp;<code>java.util.concurrent.Executor</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TryExecutor.html#execute(java.lang.Runnable)">execute</a></code>&nbsp;in interface&nbsp;<code><a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></code></dd>
</dl>
</li>
</ul>
<a id="tryExecute(java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tryExecute</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;tryExecute&#8203;(java.lang.Runnable&nbsp;task)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="TryExecutor.html#tryExecute(java.lang.Runnable)">TryExecutor</a></code></span></div>
<div class="block">Attempt to execute a task.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TryExecutor.html#tryExecute(java.lang.Runnable)">tryExecute</a></code>&nbsp;in interface&nbsp;<code><a href="TryExecutor.html" title="interface in org.eclipse.jetty.util.thread">TryExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>task</code> - The task to be executed</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True IFF the task has been given directly to a thread to execute.  The task cannot be queued pending the later availability of a Thread.</dd>
</dl>
</li>
</ul>
<a id="join()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>join</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;join()
          throws java.lang.InterruptedException</pre>
<div class="block">Blocks until the thread pool is <a href="../component/LifeCycle.html#stop()"><code>stopped</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ThreadPool.html#join()">join</a></code>&nbsp;in interface&nbsp;<code><a href="ThreadPool.html" title="interface in org.eclipse.jetty.util.thread">ThreadPool</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.InterruptedException</code> - if thread was interrupted</dd>
</dl>
</li>
</ul>
<a id="startThread()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startThread</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;startThread()</pre>
</li>
</ul>
<a id="newThread(java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newThread</h4>
<pre class="methodSignature">public&nbsp;java.lang.Thread&nbsp;newThread&#8203;(java.lang.Runnable&nbsp;runnable)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>newThread</code>&nbsp;in interface&nbsp;<code>java.util.concurrent.ThreadFactory</code></dd>
</dl>
</li>
</ul>
<a id="removeThread(java.lang.Thread)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeThread</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;removeThread&#8203;(java.lang.Thread&nbsp;thread)</pre>
</li>
</ul>
<a id="dump(java.lang.Appendable,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dump</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;dump&#8203;(java.lang.Appendable&nbsp;out,
                 java.lang.String&nbsp;indent)
          throws java.io.IOException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../component/Dumpable.html#dump(java.lang.Appendable,java.lang.String)">Dumpable</a></code></span></div>
<div class="block">Dump this object (and children) into an Appendable using the provided indent after any new lines.
 The indent should not be applied to the first object dumped.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../component/Dumpable.html#dump(java.lang.Appendable,java.lang.String)">dump</a></code>&nbsp;in interface&nbsp;<code><a href="../component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String)">dump</a></code>&nbsp;in class&nbsp;<code><a href="../component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>out</code> - The appendable to dump to</dd>
<dd><code>indent</code> - The indent to apply after any new lines.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - if unable to write to Appendable</dd>
</dl>
</li>
</ul>
<a id="runJob(java.lang.Runnable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>runJob</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;runJob&#8203;(java.lang.Runnable&nbsp;job)</pre>
<div class="block"><p>Runs the given job in the <code>current thread</code>.</p>
 <p>Subclasses may override to perform pre/post actions before/after the job is run.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>job</code> - the job to run</dd>
</dl>
</li>
</ul>
<a id="getQueue()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueue</h4>
<pre class="methodSignature">protected&nbsp;java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;getQueue()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the job queue</dd>
</dl>
</li>
</ul>
<a id="setQueue(java.util.concurrent.BlockingQueue)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQueue</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;void&nbsp;setQueue&#8203;(java.util.concurrent.BlockingQueue&lt;java.lang.Runnable&gt;&nbsp;queue)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">pass the queue to the constructor instead</div>
</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queue</code> - the job queue</dd>
</dl>
</li>
</ul>
<a id="interruptThread(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>interruptThread</h4>
<pre class="methodSignature"><a href="../annotation/ManagedOperation.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedOperation</a>("interrupts a pool thread")
public&nbsp;boolean&nbsp;interruptThread&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("id")
                               long&nbsp;id)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the thread ID to interrupt.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the thread was found and interrupted.</dd>
</dl>
</li>
</ul>
<a id="dumpThread(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dumpThread</h4>
<pre class="methodSignature"><a href="../annotation/ManagedOperation.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedOperation</a>("dumps a pool thread stack")
public&nbsp;java.lang.String&nbsp;dumpThread&#8203;(<a href="../annotation/Name.html" title="annotation in org.eclipse.jetty.util.annotation">@Name</a>("id")
                                   long&nbsp;id)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>id</code> - the thread ID to interrupt.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the stack frames dump</dd>
</dl>
</li>
</ul>
<a id="toString()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../component/AbstractLifeCycle.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="../component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/QueuedThreadPool.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>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<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>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
