<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::WorkerThread Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1WorkerThread.html">WorkerThread</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classcrashpad_1_1WorkerThread-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::WorkerThread Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a> executes its <a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html" title="An interface for doing work on a WorkerThread.">Delegate</a>'s DoWork method repeatedly on a dedicated thread at a set time interval.  
 <a href="classcrashpad_1_1WorkerThread.html#details">More...</a></p>

<p><code>#include &quot;util/thread/worker_thread.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html">Delegate</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An interface for doing work on a <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a>.  <a href="classcrashpad_1_1WorkerThread_1_1Delegate.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acd19c649b9eb4440f6685b016c01b1f7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#acd19c649b9eb4440f6685b016c01b1f7">WorkerThread</a> (double work_interval, <a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html">Delegate</a> *delegate)</td></tr>
<tr class="memdesc:acd19c649b9eb4440f6685b016c01b1f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a> that is not yet running.  <a href="classcrashpad_1_1WorkerThread.html#acd19c649b9eb4440f6685b016c01b1f7">More...</a><br /></td></tr>
<tr class="separator:acd19c649b9eb4440f6685b016c01b1f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d5bb2e8fe18e4ca391b09a09d1ea23f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#a5d5bb2e8fe18e4ca391b09a09d1ea23f">Start</a> (double initial_work_delay)</td></tr>
<tr class="memdesc:a5d5bb2e8fe18e4ca391b09a09d1ea23f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts the worker thread.  <a href="classcrashpad_1_1WorkerThread.html#a5d5bb2e8fe18e4ca391b09a09d1ea23f">More...</a><br /></td></tr>
<tr class="separator:a5d5bb2e8fe18e4ca391b09a09d1ea23f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fb859504e561e443236960adbf5fad6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#a6fb859504e561e443236960adbf5fad6">Stop</a> ()</td></tr>
<tr class="memdesc:a6fb859504e561e443236960adbf5fad6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops the worker thread from running.  <a href="classcrashpad_1_1WorkerThread.html#a6fb859504e561e443236960adbf5fad6">More...</a><br /></td></tr>
<tr class="separator:a6fb859504e561e443236960adbf5fad6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af30d5046ff7606f8d6b3fc5bf61143e0"><td class="memItemLeft" align="right" valign="top"><a id="af30d5046ff7606f8d6b3fc5bf61143e0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#af30d5046ff7606f8d6b3fc5bf61143e0">DoWorkNow</a> ()</td></tr>
<tr class="memdesc:af30d5046ff7606f8d6b3fc5bf61143e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupts a <em>work_interval</em> to execute the work function immediately. This invokes <a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html#a91492f3dae15910a62d1980f0ec618c3" title="The work function executed by the WorkerThread every work interval.">Delegate::DoWork()</a> on the thread, without waiting for the current <em>work_interval</em> to expire. After the delegate is invoked, the <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a> will start waiting for a new <em>work_interval</em>. <br /></td></tr>
<tr class="separator:af30d5046ff7606f8d6b3fc5bf61143e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66eb9551438d4f4e034a0f6bcc738f21"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#a66eb9551438d4f4e034a0f6bcc738f21">is_running</a> () const</td></tr>
<tr class="separator:a66eb9551438d4f4e034a0f6bcc738f21"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a92b0883b4782570f94ad98c2b66bd2d8"><td class="memItemLeft" align="right" valign="top"><a id="a92b0883b4782570f94ad98c2b66bd2d8"></a>
static constexpr double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1WorkerThread.html#a92b0883b4782570f94ad98c2b66bd2d8">kIndefiniteWait</a> = Semaphore::kIndefiniteWait</td></tr>
<tr class="memdesc:a92b0883b4782570f94ad98c2b66bd2d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">A delay or interval argument that causes an indefinite wait. <br /></td></tr>
<tr class="separator:a92b0883b4782570f94ad98c2b66bd2d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a9313453d17f59a246e0dbc35d942e9f3"><td class="memItemLeft" align="right" valign="top"><a id="a9313453d17f59a246e0dbc35d942e9f3"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>internal::WorkerThreadImpl</b></td></tr>
<tr class="separator:a9313453d17f59a246e0dbc35d942e9f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a> executes its <a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html" title="An interface for doing work on a WorkerThread.">Delegate</a>'s DoWork method repeatedly on a dedicated thread at a set time interval. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="acd19c649b9eb4440f6685b016c01b1f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd19c649b9eb4440f6685b016c01b1f7">&#9670;&nbsp;</a></span>WorkerThread()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">crashpad::WorkerThread::WorkerThread </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>work_interval</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html">WorkerThread::Delegate</a> *&#160;</td>
          <td class="paramname"><em>delegate</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates a new <a class="el" href="classcrashpad_1_1WorkerThread.html" title="A WorkerThread executes its Delegate&#39;s DoWork method repeatedly on a dedicated thread at a set time i...">WorkerThread</a> that is not yet running. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">work_interval</td><td>The time interval in seconds at which the <em>delegate</em> runs. The interval counts from the completion of <a class="el" href="classcrashpad_1_1WorkerThread_1_1Delegate.html#a91492f3dae15910a62d1980f0ec618c3" title="The work function executed by the WorkerThread every work interval.">Delegate::DoWork()</a> to the next invocation. This can be <a class="el" href="classcrashpad_1_1WorkerThread.html#a92b0883b4782570f94ad98c2b66bd2d8" title="A delay or interval argument that causes an indefinite wait.">kIndefiniteWait</a> if work should only be done when <a class="el" href="classcrashpad_1_1WorkerThread.html#af30d5046ff7606f8d6b3fc5bf61143e0" title="Interrupts a work_interval to execute the work function immediately. This invokes Delegate::DoWork() ...">DoWorkNow()</a> is called. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">delegate</td><td>The work delegate to invoke every interval. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a66eb9551438d4f4e034a0f6bcc738f21"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66eb9551438d4f4e034a0f6bcc738f21">&#9670;&nbsp;</a></span>is_running()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool crashpad::WorkerThread::is_running </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the thread is running, <code>false</code> if it is not. </dd></dl>

</div>
</div>
<a id="a5d5bb2e8fe18e4ca391b09a09d1ea23f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d5bb2e8fe18e4ca391b09a09d1ea23f">&#9670;&nbsp;</a></span>Start()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::WorkerThread::Start </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>initial_work_delay</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Starts the worker thread. </p>
<p>This may not be called if the thread <a class="el" href="classcrashpad_1_1WorkerThread.html#a66eb9551438d4f4e034a0f6bcc738f21">is_running()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">initial_work_delay</td><td>The amount of time in seconds to wait before invoking the <em>delegate</em> for the first time. Pass <code>0</code> for no delay. This can be <a class="el" href="classcrashpad_1_1WorkerThread.html#a92b0883b4782570f94ad98c2b66bd2d8" title="A delay or interval argument that causes an indefinite wait.">kIndefiniteWait</a> if work should not be done until <a class="el" href="classcrashpad_1_1WorkerThread.html#af30d5046ff7606f8d6b3fc5bf61143e0" title="Interrupts a work_interval to execute the work function immediately. This invokes Delegate::DoWork() ...">DoWorkNow()</a> is called. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a6fb859504e561e443236960adbf5fad6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6fb859504e561e443236960adbf5fad6">&#9670;&nbsp;</a></span>Stop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::WorkerThread::Stop </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Stops the worker thread from running. </p>
<p>This may only be called if the thread <a class="el" href="classcrashpad_1_1WorkerThread.html#a66eb9551438d4f4e034a0f6bcc738f21">is_running()</a>.</p>
<p>If the work function is currently executing, this will not interrupt it. This method stops any future work from occurring. This method is safe to call from any thread with the exception of the worker thread itself, as this joins the thread. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>util/thread/worker_thread.h</li>
<li>util/thread/worker_thread.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>
