Files
hustoj/web/cppreference-zh/chmhelp/cpp-thread.html
2025-08-01 12:57:54 +08:00

598 lines
30 KiB
HTML

<!DOCTYPE html>
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>&#32447;&#31243;&#25903;&#25345;&#24211;</title>
<link rel="stylesheet" href="ext.css" />
<link rel="stylesheet" href="site_modules.css" />
</head>
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_thread skin-cppreference2 action-view cpp-navbar">
<div id="cpp-content-base">
<div id="content"><a id="top"></a>
<h1 id="firstHeading" class="firstHeading">&#32447;&#31243;&#25903;&#25345;&#24211;</h1>
<div id="bodyContent">
<div id="contentSub"><span class="subpages">&lt; <a href="cpp.html">cpp</a></span></div>
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
<p>C++ &#21253;&#21547;&#32447;&#31243;&#12289;&#20114;&#26021;&#12289;&#26465;&#20214;&#21464;&#37327;&#21644;future&#30340;&#20869;&#24314;&#25903;&#25345;&#12290;</p>
<h3><span class="mw-headline" id=".E7.BA.BF.E7.A8.8B">&#32447;&#31243;</span></h3>
<p>&#32447;&#31243;&#20351;&#24471;&#31243;&#24207;&#33021;&#22312;&#25968;&#20010;&#22788;&#29702;&#22120;&#26680;&#24515;&#21516;&#26102;&#25191;&#34892;&#12290;</p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-thread.html">&lt;thread&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-thread.html"><span class="t-lines"><span>thread</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#31649;&#29702;&#21333;&#29420;&#30340;&#32447;&#31243;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-jthread.html"><span class="t-lines"><span>jthread</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#26377;&#33258;&#21160;&#21512;&#24182;&#21644;&#21462;&#28040;&#25903;&#25345;&#30340; <span class="t-lc"><a href="cpp-thread-thread.html">std::thread</a></span><br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr>
<td colspan="2">
<h5><span class="mw-headline" id=".E7.AE.A1.E7.90.86.E5.BD.93.E5.89.8D.E7.BA.BF.E7.A8.8B.E7.9A.84.E5.87.BD.E6.95.B0">&#31649;&#29702;&#24403;&#21069;&#32447;&#31243;&#30340;&#20989;&#25968;</span></h5>
</td>
</tr>
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#21629;&#21517;&#31354;&#38388; <code>this_thread</code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-yield.html"><span class="t-lines"><span>yield</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#24314;&#35758;&#23454;&#29616;&#37325;&#26032;&#35843;&#24230;&#21508;&#25191;&#34892;&#32447;&#31243;<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-get_id.html"><span class="t-lines"><span>get_id</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#36820;&#22238;&#24403;&#21069;&#32447;&#31243;&#30340;&#32447;&#31243; id<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-sleep_for.html"><span class="t-lines"><span>sleep_for</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#20351;&#24403;&#21069;&#32447;&#31243;&#30340;&#25191;&#34892;&#20572;&#27490;&#25351;&#23450;&#30340;&#26102;&#38388;&#27573;<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-sleep_until.html"><span class="t-lines"><span>sleep_until</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#20351;&#24403;&#21069;&#32447;&#31243;&#30340;&#25191;&#34892;&#20572;&#27490;&#30452;&#21040;&#25351;&#23450;&#30340;&#26102;&#38388;&#28857;<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
</table>
<table class="t-rev-begin">
<tr class="t-rev t-since-cxx20">
<td>
<h3><span class="mw-headline" id=".E7.BA.BF.E7.A8.8B.E5.8F.96.E6.B6.88">&#32447;&#31243;&#21462;&#28040;</span></h3>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-stop_token.html">&lt;stop_token&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-stop_token.html"><span class="t-lines"><span>stop_token</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#26597;&#35810;&#26159;&#21542;&#24050;&#32463;&#20570;&#20986; <span class="t-lc">std::jthread</span> &#21462;&#28040;&#35831;&#27714;&#30340;&#25509;&#21475;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-stop_source.html"><span class="t-lines"><span>stop_source</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#34920;&#31034;&#35831;&#27714;&#20572;&#27490;&#19968;&#20010;&#25110;&#22810;&#20010; <span class="t-lc">std::jthread</span> &#30340;&#31867;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-stop_callback.html"><span class="t-lines"><span>stop_callback</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#22312; <span class="t-lc">std::jthread</span> &#21462;&#28040;&#19978;&#27880;&#20876;&#22238;&#35843;&#30340;&#25509;&#21475;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
</table>
</td>
<td><span class="t-mark-rev t-since-cxx20">(C++20 &#36215;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E7.BC.93.E5.AD.98.E5.A4.A7.E5.B0.8F.E8.AE.BF.E9.97.AE">&#32531;&#23384;&#22823;&#23567;&#35775;&#38382;</span></h3>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-new.html">&lt;new&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-hardware_destructive_interference_size.html"><span class="t-lines"><span>hardware_destructive_interference_size</span><span>hardware_constructive_interference_size</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
</div>
</td>
<td>&#36991;&#20813;&#20551;&#20849;&#20139;&#30340;&#26368;&#23567;&#20559;&#31227;<br />
&#20419;&#20351;&#30495;&#20849;&#20139;&#30340;&#26368;&#22823;&#20559;&#31227;<br />
<span class="t-mark">(&#24120;&#37327;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E4.BA.92.E6.96.A5">&#20114;&#26021;</span></h3>
<p>&#20114;&#26021;&#31639;&#27861;&#36991;&#20813;&#22810;&#20010;&#32447;&#31243;&#21516;&#26102;&#35775;&#38382;&#20849;&#20139;&#36164;&#28304;&#12290;&#36825;&#20250;&#36991;&#20813;&#25968;&#25454;&#31454;&#20105;&#65292;&#24182;&#25552;&#20379;&#32447;&#31243;&#38388;&#30340;&#21516;&#27493;&#25903;&#25345;&#12290;</p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-mutex.html">&lt;mutex&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-mutex.html"><span class="t-lines"><span>mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#22522;&#26412;&#20114;&#26021;&#35774;&#26045;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-timed_mutex.html"><span class="t-lines"><span>timed_mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#20114;&#26021;&#35774;&#26045;&#65292;&#23454;&#29616;&#26377;&#26102;&#38480;&#38145;&#23450;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-recursive_mutex.html"><span class="t-lines"><span>recursive_mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#33021;&#34987;&#21516;&#19968;&#32447;&#31243;&#36882;&#24402;&#38145;&#23450;&#30340;&#20114;&#26021;&#35774;&#26045;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-recursive_timed_mutex.html"><span class="t-lines"><span>recursive_timed_mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#33021;&#34987;&#21516;&#19968;&#32447;&#31243;&#36882;&#24402;&#38145;&#23450;&#30340;&#20114;&#26021;&#35774;&#26045;&#65292;&#24182;&#23454;&#29616;&#26377;&#26102;&#38480;&#38145;&#23450;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-shared_mutex.html">&lt;shared_mutex&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-shared_mutex.html"><span class="t-lines"><span>shared_mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#20849;&#20139;&#20114;&#26021;&#35774;&#26045;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-shared_timed_mutex.html"><span class="t-lines"><span>shared_timed_mutex</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx14">(C++14)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#20849;&#20139;&#20114;&#26021;&#35774;&#26045;&#24182;&#23454;&#29616;&#26377;&#26102;&#38480;&#38145;&#23450;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr>
<td colspan="2">
<h5><span class="mw-headline" id=".E9.80.9A.E7.94.A8.E4.BA.92.E6.96.A5.E7.AE.A1.E7.90.86">&#36890;&#29992;&#20114;&#26021;&#31649;&#29702;</span></h5>
</td>
</tr>
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-mutex.html">&lt;mutex&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-lock_guard.html"><span class="t-lines"><span>lock_guard</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#23454;&#29616;&#20005;&#26684;&#22522;&#20110;&#20316;&#29992;&#22495;&#30340;&#20114;&#26021;&#20307;&#25152;&#26377;&#26435;&#21253;&#35013;&#22120;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-scoped_lock.html"><span class="t-lines"><span>scoped_lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx17">(C++17)</span></span></span></div>
</div>
</td>
<td>&#29992;&#20110;&#22810;&#20010;&#20114;&#26021;&#20307;&#30340;&#20813;&#27515;&#38145; RAII &#23553;&#35013;&#22120;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-unique_lock.html"><span class="t-lines"><span>unique_lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#23454;&#29616;&#21487;&#31227;&#21160;&#30340;&#20114;&#26021;&#20307;&#25152;&#26377;&#26435;&#21253;&#35013;&#22120;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-shared_lock.html"><span class="t-lines"><span>shared_lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx14">(C++14)</span></span></span></div>
</div>
</td>
<td>&#23454;&#29616;&#21487;&#31227;&#21160;&#30340;&#20849;&#20139;&#20114;&#26021;&#20307;&#25152;&#26377;&#26435;&#23553;&#35013;&#22120;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-lock_tag_t.html"><span class="t-lines"><span>defer_lock_t</span><span>try_to_lock_t</span><span>adopt_lock_t</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#29992;&#20110;&#25351;&#23450;&#38145;&#23450;&#31574;&#30053;&#30340;&#26631;&#31614;&#31867;&#22411;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-lock_tag.html"><span class="t-lines"><span>defer_lock</span><span>try_to_lock</span><span>adopt_lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#29992;&#20110;&#25351;&#23450;&#38145;&#23450;&#31574;&#30053;&#30340;&#26631;&#31614;&#24120;&#37327;<br />
<span class="t-mark">(&#24120;&#37327;)</span></td>
</tr>
<tr>
<td colspan="2">
<h5><span class="mw-headline" id=".E9.80.9A.E7.94.A8.E9.94.81.E5.AE.9A.E7.AE.97.E6.B3.95">&#36890;&#29992;&#38145;&#23450;&#31639;&#27861;</span></h5>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-try_lock.html"><span class="t-lines"><span>try_lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#35797;&#22270;&#36890;&#36807;&#37325;&#22797;&#35843;&#29992; <code>try_lock</code> &#33719;&#24471;&#20114;&#26021;&#20307;&#30340;&#25152;&#26377;&#26435;<br />
<span class="t-mark">(&#20989;&#25968;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-lock.html"><span class="t-lines"><span>lock</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#38145;&#23450;&#25351;&#23450;&#30340;&#20114;&#26021;&#20307;&#65292;&#33509;&#20219;&#20309;&#19968;&#20010;&#19981;&#21487;&#29992;&#21017;&#38459;&#22622;<br />
<span class="t-mark">(&#20989;&#25968;&#27169;&#26495;)</span></td>
</tr>
<tr>
<td colspan="2">
<h5><span class="mw-headline" id=".E5.8D.95.E6.AC.A1.E8.B0.83.E7.94.A8">&#21333;&#27425;&#35843;&#29992;</span></h5>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-once_flag.html"><span class="t-lines"><span>once_flag</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#30830;&#20445; <a href="cpp-thread-call_once.html"><tt>call_once</tt></a> &#21482;&#35843;&#29992;&#20989;&#25968;&#19968;&#27425;&#30340;&#24110;&#21161;&#23545;&#35937;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-call_once.html"><span class="t-lines"><span>call_once</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#20165;&#35843;&#29992;&#20989;&#25968;&#19968;&#27425;&#65292;&#21363;&#20351;&#20174;&#22810;&#20010;&#32447;&#31243;&#35843;&#29992;<br />
<span class="t-mark">(&#20989;&#25968;&#27169;&#26495;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.9D.A1.E4.BB.B6.E5.8F.98.E9.87.8F">&#26465;&#20214;&#21464;&#37327;</span></h3>
<p>&#26465;&#20214;&#21464;&#37327;&#26159;&#20801;&#35768;&#22810;&#20010;&#32447;&#31243;&#30456;&#20114;&#20132;&#27969;&#30340;&#21516;&#27493;&#21407;&#35821;&#12290;&#23427;&#20801;&#35768;&#19968;&#23450;&#37327;&#30340;&#32447;&#31243;&#31561;&#24453;&#65288;&#21487;&#20197;&#23450;&#26102;&#65289;&#21478;&#19968;&#32447;&#31243;&#30340;&#25552;&#37266;&#65292;&#28982;&#21518;&#20877;&#32487;&#32493;&#12290;&#26465;&#20214;&#21464;&#37327;&#22987;&#32456;&#20851;&#32852;&#21040;&#19968;&#20010;&#20114;&#26021;&#12290;</p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-condition_variable.html">&lt;condition_variable&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-condition_variable.html"><span class="t-lines"><span>condition_variable</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#19982; <span class="t-lc"><a href="cpp-thread-unique_lock.html">std::unique_lock</a></span> &#20851;&#32852;&#30340;&#26465;&#20214;&#21464;&#37327;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-condition_variable_any.html"><span class="t-lines"><span>condition_variable_any</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25552;&#20379;&#19982;&#20219;&#20309;&#38145;&#31867;&#22411;&#20851;&#32852;&#30340;&#26465;&#20214;&#21464;&#37327;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-notify_all_at_thread_exit.html"><span class="t-lines"><span>notify_all_at_thread_exit</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#23433;&#25490;&#21040;&#22312;&#27492;&#32447;&#31243;&#23436;&#20840;&#32467;&#26463;&#26102;&#23545; <code>notify_all</code> &#30340;&#35843;&#29992;<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-cv_status.html"><span class="t-lines"><span>cv_status</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#21015;&#20986;&#26465;&#20214;&#21464;&#37327;&#19978;&#23450;&#26102;&#31561;&#24453;&#30340;&#21487;&#33021;&#32467;&#26524;<br />
<span class="t-mark">(&#26522;&#20030;)</span></td>
</tr>
</table>
<table class="t-rev-begin">
<tr class="t-rev t-since-cxx20">
<td>
<h3><span class="mw-headline" id=".E4.BF.A1.E5.8F.B7.E9.87.8F">&#20449;&#21495;&#37327;</span></h3>
<p>&#20449;&#21495;&#37327; (semaphore) &#26159;&#19968;&#31181;&#36731;&#37327;&#30340;&#21516;&#27493;&#21407;&#20214;&#65292;&#29992;&#20110;&#21046;&#32422;&#23545;&#20849;&#20139;&#36164;&#28304;&#30340;&#24182;&#21457;&#35775;&#38382;&#12290;&#22312;&#21487;&#20197;&#20351;&#29992;&#20004;&#32773;&#26102;&#65292;&#20449;&#21495;&#37327;&#33021;&#27604;&#26465;&#20214;&#21464;&#37327;&#26356;&#26377;&#25928;&#29575;&#12290;</p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-semaphore.html">&lt;semaphore&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-counting_semaphore.html"><span class="t-lines"><span>counting_semaphore</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#23454;&#29616;&#38750;&#36127;&#36164;&#28304;&#35745;&#25968;&#30340;&#20449;&#21495;&#37327;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-counting_semaphore.html"><span class="t-lines"><span>binary_semaphore</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#20165;&#25317;&#26377;&#20108;&#20010;&#29366;&#24577;&#30340;&#20449;&#21495;&#37327;<br />
<span class="t-mark">(typedef)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E9.97.A9.E4.B8.8E.E5.B1.8F.E9.9A.9C">&#38377;&#19982;&#23631;&#38556;</span></h3>
<p>&#38377; (latch) &#19982;&#23631;&#38556; (barrier) &#26159;&#32447;&#31243;&#21327;&#35843;&#26426;&#21046;&#65292;&#20801;&#35768;&#20219;&#20309;&#25968;&#37327;&#30340;&#32447;&#31243;&#38459;&#22622;&#30452;&#33267;&#26399;&#24453;&#25968;&#37327;&#30340;&#32447;&#31243;&#21040;&#36798;&#35813;&#23631;&#38556;&#12290;&#38377;&#19981;&#33021;&#22797;&#29992;&#65292;&#23631;&#38556;&#33021;&#37325;&#22797;&#20351;&#29992;&#12290;</p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-latch.html">&lt;latch&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-latch.html"><span class="t-lines"><span>latch</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#21333;&#27425;&#20351;&#29992;&#30340;&#32447;&#31243;&#23631;&#38556;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-barrier.html">&lt;barrier&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-barrier.html"><span class="t-lines"><span>barrier</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#21487;&#22797;&#29992;&#30340;&#32447;&#31243;&#23631;&#38556;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
</table>
<p><br /></p>
</td>
<td><span class="t-mark-rev t-since-cxx20">(C++20 &#36215;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id="Future">Future</span></h3>
<p>&#26631;&#20934;&#24211;&#25552;&#20379;&#20102;&#19968;&#20123;&#24037;&#20855;&#26469;&#33719;&#21462;&#24322;&#27493;&#20219;&#21153;&#65288;&#21363;&#22312;&#21333;&#29420;&#30340;&#32447;&#31243;&#20013;&#21551;&#21160;&#30340;&#20989;&#25968;&#65289;&#30340;&#36820;&#22238;&#20540;&#65292;&#24182;&#25429;&#25417;&#20854;&#25152;&#25243;&#20986;&#30340;&#24322;&#24120;&#12290;&#36825;&#20123;&#20540;&#22312;<i>&#20849;&#20139;&#29366;&#24577;</i>&#20013;&#20256;&#36882;&#65292;&#20854;&#20013;&#24322;&#27493;&#20219;&#21153;&#21487;&#20197;&#20889;&#20837;&#20854;&#36820;&#22238;&#20540;&#25110;&#23384;&#20648;&#24322;&#24120;&#65292;&#32780;&#19988;&#21487;&#20197;&#30001;&#25345;&#26377;&#35813;&#24341;&#29992;&#35813;&#20849;&#20139;&#24577;&#30340; <span class="t-lc"><a href="cpp-thread-future.html">std::future</a></span> &#25110; <span class="t-lc"><a href="cpp-thread-shared_future.html">std::shared_future</a></span> &#23454;&#20363;&#30340;&#32447;&#31243;&#26816;&#39564;&#12289;&#31561;&#24453;&#25110;&#26159;&#25805;&#20316;&#36825;&#20010;&#29366;&#24577;&#12290;</p>
<p><br /></p>
<table class="t-dsc-begin">
<tr class="t-dsc-header">
<td colspan="2">
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-future.html">&lt;future&gt;</a></code></div>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-promise.html"><span class="t-lines"><span>promise</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#23384;&#20648;&#19968;&#20010;&#20540;&#20197;&#36827;&#34892;&#24322;&#27493;&#33719;&#21462;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-packaged_task.html"><span class="t-lines"><span>packaged_task</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25171;&#21253;&#19968;&#20010;&#20989;&#25968;&#65292;&#23384;&#20648;&#20854;&#36820;&#22238;&#20540;&#20197;&#36827;&#34892;&#24322;&#27493;&#33719;&#21462;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-future.html"><span class="t-lines"><span>future</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#31561;&#24453;&#34987;&#24322;&#27493;&#35774;&#32622;&#30340;&#20540;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-shared_future.html"><span class="t-lines"><span>shared_future</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#31561;&#24453;&#34987;&#24322;&#27493;&#35774;&#32622;&#30340;&#20540;&#65288;&#21487;&#33021;&#20026;&#20854;&#20182; future &#25152;&#24341;&#29992;&#65289;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-async.html"><span class="t-lines"><span>async</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#24322;&#27493;&#36816;&#34892;&#19968;&#20010;&#20989;&#25968;&#65288;&#26377;&#21487;&#33021;&#22312;&#26032;&#32447;&#31243;&#20013;&#25191;&#34892;&#65289;&#65292;&#24182;&#36820;&#22238;&#20445;&#26377;&#20854;&#32467;&#26524;&#30340; <span class="t-lc"><a href="cpp-thread-future.html">std::future</a></span><br />
<span class="t-mark">(&#20989;&#25968;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-launch.html"><span class="t-lines"><span>launch</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25351;&#23450; <span class="t-lc"><a href="cpp-thread-async.html">std::async</a></span> &#25152;&#29992;&#30340;&#36816;&#34892;&#31574;&#30053;<br />
<span class="t-mark">(&#26522;&#20030;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-future_status.html"><span class="t-lines"><span>future_status</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25351;&#23450;&#22312; <span class="t-lc"><a href="cpp-thread-future.html">std::future</a></span> &#21644; <span class="t-lc"><a href="cpp-thread-shared_future.html">std::shared_future</a></span> &#19978;&#30340;&#23450;&#26102;&#31561;&#24453;&#30340;&#32467;&#26524;<br />
<span class="t-mark">(&#26522;&#20030;)</span></td>
</tr>
<tr>
<td colspan="2">
<h5><span class="mw-headline" id="Future_.E9.94.99.E8.AF.AF">Future &#38169;&#35823;</span></h5>
</td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-future_error.html"><span class="t-lines"><span>future_error</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#25253;&#21578;&#19982; future &#25110; promise &#26377;&#20851;&#30340;&#38169;&#35823;<br />
<span class="t-mark">(&#31867;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-future_category.html"><span class="t-lines"><span>future_category</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#37492;&#21035; future &#38169;&#35823;&#31867;&#21035;<br />
<span class="t-mark">(&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-thread-future_errc.html"><span class="t-lines"><span>future_errc</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#37492;&#21035; future &#38169;&#35823;&#30721;<br />
<span class="t-mark">(&#26522;&#20030;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">&#21442;&#38405;</span></h3>
<table class="t-dsc-begin"></table>
</div>
<div class="visualClear"></div>
</div>
</div>
</div>
</body>
</html>