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

104 lines
7.5 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>std::stop_callback</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_stop_callback skin-cppreference2 action-view cpp-navbar">
<div id="cpp-content-base">
<div id="content"><a id="top"></a>
<h1 id="firstHeading" class="firstHeading"><span style="font-size:0.7em; line-height:130%">std::</span>stop_callback</h1>
<div id="bodyContent">
<div id="contentSub"><span class="subpages">&lt; <a href="cpp.html">cpp</a>&lrm; | <a href="cpp-thread.html">thread</a></span></div>
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
<table class="t-dcl-begin">
<tbody>
<tr class="t-dsc-header">
<td>
<div>&#23450;&#20041;&#20110;&#22836;&#25991;&#20214; <code><a href="cpp-header-stop_token.html">&lt;stop_token&gt;</a></code></div>
</td>
<td></td>
<td></td>
</tr>
<tr class="t-dcl t-since-cxx20">
<td>
<div><span class="mw-geshi cpp source-cpp"><span class="kw1">template</span><span class="sy1">&lt;</span> <span class="kw1">class</span> Callback <span class="sy1">&gt;</span><br />
<span class="kw1">class</span> stop_callback<span class="sy4">;</span></span></div>
</td>
<td class="t-dcl-nopad"></td>
<td><span class="t-mark-rev t-since-cxx20">(C++20 &#36215;)</span></td>
</tr>
<tr class="t-dcl-sep">
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p><code>stop_callback</code> &#31867;&#27169;&#26495;&#25552;&#20379;&#23545;&#20851;&#32852;&#30340; <a href="cpp-thread-stop_token.html"><tt>std::stop_token</tt></a> &#23545;&#35937;&#27880;&#20876;&#22238;&#35843;&#20989;&#25968;&#30340; RAII &#23545;&#35937;&#31867;&#22411;&#65292;&#20351;&#24471;&#23558;&#22312; <a href="cpp-thread-stop_token.html"><tt>std::stop_token</tt></a> &#30340;&#20851;&#32852; <a href="cpp-thread-stop_source.html"><tt>std::stop_source</tt></a> &#34987;&#35831;&#27714;&#20572;&#27490;&#26102;&#35843;&#29992;&#22238;&#35843;&#20989;&#25968;&#12290;</p>
<p>&#22312;&#23545;&#35813; <code>stop_callback</code> &#30340;&#20851;&#32852; <a href="cpp-thread-stop_token.html"><tt>std::stop_token</tt></a> &#30340;<a href="cpp-thread-stop_source.html"><tt>std::stop_source</tt></a> &#25104;&#21151;&#35843;&#29992; <span class="t-c"><span class="mw-geshi cpp source-cpp">request_stop<span class="br0">(</span><span class="br0">)</span></span></span> &#30340;&#21516;&#19968;&#32447;&#31243;&#35843;&#29992;&#32463;&#30001; <code>stop_callback</code> &#26500;&#36896;&#20989;&#25968;&#27880;&#20876;&#30340;&#22238;&#35843;&#20989;&#25968;&#65307;&#25110;&#33509;&#22312;&#26500;&#36896;&#20989;&#25968;&#30340;&#27880;&#20876;&#21069;&#24050;&#35831;&#27714;&#20572;&#27490;&#65292;&#21017;&#22312;&#26500;&#36896; <code>stop_callback</code> &#30340;&#32447;&#31243;&#35843;&#29992;&#22238;&#35843;&#20989;&#25968;&#12290;</p>
<p>&#33021;&#22312;&#21516;&#19968;&#25110;&#19981;&#21516;&#32447;&#31243;&#21516;&#26102;&#23545;&#21516;&#19968; <a href="cpp-thread-stop_token.html"><tt>std::stop_token</tt></a> &#21019;&#24314;&#22810;&#20110;&#19968;&#20010; <code>stop_callback</code> &#12290;&#19981;&#25552;&#20379;&#23545;&#25191;&#34892;&#23427;&#20204;&#25152;&#29992;&#39034;&#24207;&#30340;&#20445;&#35777;&#65292;&#20294;&#23558;&#21516;&#27493;&#35843;&#29992;&#23427;&#20204;&#65307;&#38500;&#20102;&#23545;&#24050;&#23545; <a href="cpp-thread-stop_token.html"><tt>std::stop_token</tt></a> &#35831;&#27714;&#20572;&#27490;&#21518;&#26500;&#36896;&#30340; <code>stop_callback</code> &#22914;&#21069;&#36848;&#12290;</p>
<p>&#33509;&#35843;&#29992;&#30340;&#22238;&#35843;&#32463;&#30001;&#24322;&#24120;&#36864;&#20986;&#65292;&#21017;&#35843;&#29992; <span class="t-lc"><a href="cpp-error-terminate.html">std::terminate</a></span> &#12290;</p>
<p><code>std::stop_callback</code> &#38750;<a href="cpp-named_req-CopyConstructible.html"><span style="font-style:italic">&#21487;&#22797;&#21046;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(CopyConstructible)</span></a> &#12289;<a href="cpp-named_req-CopyAssignable.html"><span style="font-style:italic">&#21487;&#22797;&#21046;&#36171;&#20540;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(CopyAssignable)</span></a> &#12289;<a href="cpp-named_req-MoveConstructible.html"><span style="font-style:italic">&#21487;&#31227;&#21160;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(MoveConstructible)</span></a> &#20134;&#38750;<a href="cpp-named_req-MoveAssignable.html"><span style="font-style:italic">&#21487;&#31227;&#21160;&#36171;&#20540;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(MoveAssignable)</span></a> &#12290;</p>
<p>&#27169;&#26495;&#24418;&#21442; <code>Callback</code> &#31867;&#22411;&#24517;&#39035;&#20026; <a href="cpp-concepts-invocable.html"><code>invocable</code></a> &#19988; <a href="cpp-concepts-destructible.html"><code>destructible</code></a> &#12290;&#24573;&#30053;&#20219;&#20309;&#36820;&#22238;&#20540;&#12290;</p>
<h3><span class="mw-headline" id=".E6.88.90.E5.91.98.E7.B1.BB.E5.9E.8B">&#25104;&#21592;&#31867;&#22411;</span></h3>
<table class="t-dsc-begin">
<tr class="t-dsc-hitem">
<td>&#31867;&#22411;</td>
<td>&#23450;&#20041;</td>
</tr>
<tr class="t-dsc">
<td><code>callback_type</code></td>
<td><code>Callback</code></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.88.90.E5.91.98.E5.87.BD.E6.95.B0">&#25104;&#21592;&#20989;&#25968;</span></h3>
<table class="t-dsc-begin">
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div t-dsc-member-nobold-div">
<div><a href="cpp-thread-stop_callback-stop_callback.html"><span class="t-lines"><span>(&#26500;&#36896;&#20989;&#25968;)</span></span></a></div>
</div>
</td>
<td>&#26500;&#36896;&#26032;&#30340; <code>stop_callback</code> &#23545;&#35937;<br />
<span class="t-mark">(&#20844;&#24320;&#25104;&#21592;&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div t-dsc-member-nobold-div">
<div><a href="cpp-thread-stop_callback-~stop_callback.html"><span class="t-lines"><span>(&#26512;&#26500;&#20989;&#25968;)</span></span></a></div>
</div>
</td>
<td>&#26512;&#26500; <code>stop_callback</code> &#23545;&#35937;<br />
<span class="t-mark">(&#20844;&#24320;&#25104;&#21592;&#20989;&#25968;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><span class="t-lines"><span>operator=</span></span></div>
<div><span class="t-lines"><span><span class="t-cmark">[&#34987;&#21024;&#38500;]</span></span></span></div>
</div>
</td>
<td><code>stop_callback</code> &#19981;&#21487;&#36171;&#20540;<br />
<span class="t-mark">(&#20844;&#24320;&#25104;&#21592;&#20989;&#25968;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.8E.A8.E5.AF.BC.E6.8C.87.E5.BC.95"><a href="cpp-thread-stop_callback-deduction_guides.html">&#25512;&#23548;&#25351;&#24341;</a></span></h3>
<h3><span class="mw-headline" id=".E7.A4.BA.E4.BE.8B">&#31034;&#20363;</span></h3>
<table class="metadata plainlinks ambox mbox-small-left ambox-notice" style="">
<tr>
<td class="mbox-empty-cell"></td>
<td class="mbox-text" style="">&#26412;&#33410;&#26410;&#23436;&#25104;<br />
&#21407;&#22240;&#65306;&#26242;&#26080;&#31034;&#20363;</td>
</tr>
</table>
</div>
<div class="visualClear"></div>
</div>
</div>
</div>
</body>
</html>