776 lines
62 KiB
HTML
776 lines
62 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>标准库头文件 <stdatomic.h></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_header_stdatomic_h 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%">标准库头文件</span> <stdatomic.h></h1>
|
|
<div id="bodyContent">
|
|
<div id="contentSub"><span class="subpages">< <a href="cpp.html">cpp</a>‎ | <a href="cpp-header.html">header</a></span></div>
|
|
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
|
|
<p>此头文件最初在 C 标准库。</p>
|
|
<p>此头文件是<a href="cpp-atomic.html">原子操作</a>库的一部分。</p>
|
|
<p>未指定 <code><stdatomic.h></code> 是否提供任何命名空间 <code>std</code> 中的声明。</p>
|
|
<table class="t-dsc-begin">
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E5.AE.8F">宏</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>_Atomic</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx23">(C++23)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>使得 <span class="t-c"><span class="mw-geshi cpp source-cpp">_Atomic<span class="br0">(</span>T<span class="br0">)</span></span></span> 等同于 <span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span>T<span class="sy1">></span></span></span> 的兼容性宏<br />
|
|
<span class="t-mark">(宏函数)</span></td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E7.B1.BB.E5.9E.8B">类型</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_flag.html"><span class="t-lines"><span>atomic_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>免锁的布尔原子类型<br />
|
|
<span class="t-mark">(类)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-memory_order.html"><span class="t-lines"><span>memory_order</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>为给定的原子操作定义内存顺序约束<br />
|
|
<span class="t-mark">(枚举)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_bool</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">bool</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_char</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">char</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_schar</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">signed</span> <span class="kw4">char</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uchar</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">unsigned</span> <span class="kw4">char</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_short</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">short</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_ushort</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">unsigned</span> <span class="kw4">short</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">int</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">unsigned</span> <span class="kw4">int</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_long</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">long</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_ulong</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">unsigned</span> <span class="kw4">long</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_llong</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">long</span> <span class="kw4">long</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_ullong</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">unsigned</span> <span class="kw4">long</span> <span class="kw4">long</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_char8_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span>char8_t<span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_char16_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">char16_t</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_char32_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">char32_t</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_wchar_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><span class="kw4">wchar_t</span><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int8_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw106">std::<span class="me2">int8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint8_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw120">std::<span class="me2">uint8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int16_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw107">std::<span class="me2">int16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint16_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw121">std::<span class="me2">uint16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int32_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw108">std::<span class="me2">int32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint32_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw122">std::<span class="me2">uint32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int64_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw109">std::<span class="me2">int64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint64_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw123">std::<span class="me2">uint64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_least8_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw114">std::<span class="me2">int_least8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_least8_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw128">std::<span class="me2">uint_least8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_least16_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw115">std::<span class="me2">int_least16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_least16_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw129">std::<span class="me2">uint_least16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_least32_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw116">std::<span class="me2">int_least32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_least32_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw130">std::<span class="me2">uint_least32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_least64_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw117">std::<span class="me2">int_least64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_least64_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw131">std::<span class="me2">uint_least64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_fast8_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw110">std::<span class="me2">int_fast8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_fast8_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw124">std::<span class="me2">uint_fast8_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_fast16_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw111">std::<span class="me2">int_fast16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_fast16_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw125">std::<span class="me2">uint_fast16_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_fast32_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw112">std::<span class="me2">int_fast32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_fast32_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw126">std::<span class="me2">uint_fast32_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_int_fast64_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw113">std::<span class="me2">int_fast64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uint_fast64_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw127">std::<span class="me2">uint_fast64_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_intptr_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw119">std::<span class="me2">intptr_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uintptr_t</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span><span class="t-mark">(可选)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw133">std::<span class="me2">uintptr_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_size_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-size_t.html"><span class="kw100">std::<span class="me2">size_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_ptrdiff_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-ptrdiff_t.html"><span class="kw101">std::<span class="me2">ptrdiff_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_intmax_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw118">std::<span class="me2">intmax_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic.html"><span class="t-lines"><span>atomic_uintmax_t</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><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span><a href="cpp-types-integer.html"><span class="kw132">std::<span class="me2">uintmax_t</span></span></a><span class="sy1">></span></span></span><br />
|
|
<span class="t-mark">(typedef)</span></td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="2">
|
|
<h3><span class="mw-headline" id=".E5.87.BD.E6.95.B0">函数</span></h3>
|
|
</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_is_lock_free.html"><span class="t-lines"><span>atomic_is_lock_free</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>检查对该原子类型的操作是否是无锁的<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_store.html"><span class="t-lines"><span>atomic_store</span><span>atomic_store_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地以非原子实参替换原子对象的值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_load.html"><span class="t-lines"><span>atomic_load</span><span>atomic_load_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地获得存储于原子对象的值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_exchange.html"><span class="t-lines"><span>atomic_exchange</span><span>atomic_exchange_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地以非原子实参的值替换原子对象的值,并返回该原子对象的旧值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_compare_exchange.html"><span class="t-lines"><span>atomic_compare_exchange_weak</span><span>atomic_compare_exchange_weak_explicit</span><span>atomic_compare_exchange_strong</span><span>atomic_compare_exchange_strong_explicit</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><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地比较原子对象和非原子实参的值,若相等则进行 atomic_exchange,若不相等则进行 atomic_load<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_fetch_add.html"><span class="t-lines"><span>atomic_fetch_add</span><span>atomic_fetch_add_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>将非原子值加到原子对象,并获得原子对象的先前值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_fetch_sub.html"><span class="t-lines"><span>atomic_fetch_sub</span><span>atomic_fetch_sub_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>从原子对象减去非原子值,并获得原子对象的先前值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_fetch_and.html"><span class="t-lines"><span>atomic_fetch_and</span><span>atomic_fetch_and_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>将原子对象替换为与非原子实参逻辑与的结果,并获得原子对象的先前值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_fetch_or.html"><span class="t-lines"><span>atomic_fetch_or</span><span>atomic_fetch_or_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>将原子对象替换为与非原子实参逻辑或的结果,并获得原子对象的先前值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_fetch_xor.html"><span class="t-lines"><span>atomic_fetch_xor</span><span>atomic_fetch_xor_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>将原子对象替换为与非原子实参逻辑异或的结果,并获得原子对象的先前值<br />
|
|
<span class="t-mark">(函数模板)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_flag_test_and_set.html"><span class="t-lines"><span>atomic_flag_test_and_set</span><span>atomic_flag_test_and_set_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地设置标志为 <span class="t-c"><span class="mw-geshi cpp source-cpp"><span class="kw2">true</span></span></span> 并返回其先前值<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_flag_clear.html"><span class="t-lines"><span>atomic_flag_clear</span><span>atomic_flag_clear_explicit</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></div>
|
|
</div>
|
|
</td>
|
|
<td>原子地设置标志值为 <span class="t-c"><span class="mw-geshi cpp source-cpp"><span class="kw2">false</span></span></span><br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_thread_fence.html"><span class="t-lines"><span>atomic_thread_fence</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>通用的依赖内存顺序的栅栏同步原语<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-atomic-atomic_signal_fence.html"><span class="t-lines"><span>atomic_signal_fence</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>线程与执行于同一线程的信号处理函数间的栅栏<br />
|
|
<span class="t-mark">(函数)</span></td>
|
|
</tr>
|
|
</table>
|
|
<h3><span class="mw-headline" id=".E6.A6.82.E8.A6.81">概要</span></h3>
|
|
<div dir="ltr" class="mw-geshi" style="text-align: left;">
|
|
<div class="cpp source-cpp">
|
|
<pre class="de1"><span class="kw1">template</span><span class="sy1"><</span><span class="kw1">class</span> T<span class="sy1">></span>
|
|
<span class="kw1">using</span> __std_atomic <span class="sy1">=</span> <a href="cpp-atomic-atomic.html"><span class="kw2066">std::<span class="me2">atomic</span></span></a><span class="sy1"><</span>T<span class="sy1">></span><span class="sy4">;</span> <span class="co1">// 仅用于阐释</span>
|
|
|
|
<span class="co2">#define _Atomic(T) __std_atomic<T></span>
|
|
|
|
<span class="co2">#define ATOMIC_BOOL_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_CHAR_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_CHAR16_T_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_CHAR32_T_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_WCHAR_T_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_SHORT_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_INT_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_LONG_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_LLONG_LOCK_FREE /* 见描述 */</span>
|
|
<span class="co2">#define ATOMIC_POINTER_LOCK_FREE /* 见描述 */</span>
|
|
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2092">std::<span class="me2">memory_order</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2093">std::<span class="me2">memory_order_relaxed</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2094">std::<span class="me2">memory_order_consume</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2095">std::<span class="me2">memory_order_acquire</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2096">std::<span class="me2">memory_order_release</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2097">std::<span class="me2">memory_order_acq_rel</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-memory_order.html"><span class="kw2098">std::<span class="me2">memory_order_seq_cst</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_flag.html"><span class="kw2088">std::<span class="me2">atomic_flag</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2102">std::<span class="me2">atomic_bool</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_char</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2103">std::<span class="me2">atomic_schar</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2104">std::<span class="me2">atomic_uchar</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2105">std::<span class="me2">atomic_short</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2106">std::<span class="me2">atomic_ushort</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2107">std::<span class="me2">atomic_int</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2108">std::<span class="me2">atomic_uint</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2109">std::<span class="me2">atomic_long</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2110">std::<span class="me2">atomic_ulong</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2111">std::<span class="me2">atomic_llong</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2112">std::<span class="me2">atomic_ullong</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_char8_t</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2113">std::<span class="me2">atomic_char16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2114">std::<span class="me2">atomic_char32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2115">std::<span class="me2">atomic_wchar_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2116">std::<span class="me2">atomic_int8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2117">std::<span class="me2">atomic_uint8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2118">std::<span class="me2">atomic_int16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2119">std::<span class="me2">atomic_uint16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2120">std::<span class="me2">atomic_int32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2121">std::<span class="me2">atomic_uint32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2122">std::<span class="me2">atomic_int64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2123">std::<span class="me2">atomic_uint64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2124">std::<span class="me2">atomic_int_least8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2125">std::<span class="me2">atomic_uint_least8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2126">std::<span class="me2">atomic_int_least16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2127">std::<span class="me2">atomic_uint_least16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2128">std::<span class="me2">atomic_int_least32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2129">std::<span class="me2">atomic_uint_least32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2130">std::<span class="me2">atomic_int_least64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2131">std::<span class="me2">atomic_uint_least64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2132">std::<span class="me2">atomic_int_fast8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2133">std::<span class="me2">atomic_uint_fast8_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2134">std::<span class="me2">atomic_int_fast16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2135">std::<span class="me2">atomic_uint_fast16_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2136">std::<span class="me2">atomic_int_fast32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2137">std::<span class="me2">atomic_uint_fast32_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2138">std::<span class="me2">atomic_int_fast64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2139">std::<span class="me2">atomic_uint_fast64_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2140">std::<span class="me2">atomic_intptr_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2141">std::<span class="me2">atomic_uintptr_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2142">std::<span class="me2">atomic_size_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2143">std::<span class="me2">atomic_ptrdiff_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2144">std::<span class="me2">atomic_intmax_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic.html"><span class="kw2145">std::<span class="me2">atomic_uintmax_t</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_is_lock_free.html"><span class="kw2067">std::<span class="me2">atomic_is_lock_free</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_load.html"><span class="kw2070">std::<span class="me2">atomic_load</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_load.html"><span class="kw2071">std::<span class="me2">atomic_load_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_store.html"><span class="kw2068">std::<span class="me2">atomic_store</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_store.html"><span class="kw2069">std::<span class="me2">atomic_store_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_exchange.html"><span class="kw2072">std::<span class="me2">atomic_exchange</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_exchange.html"><span class="kw2073">std::<span class="me2">atomic_exchange_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_compare_exchange.html"><span class="kw2076">std::<span class="me2">atomic_compare_exchange_strong</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_compare_exchange.html"><span class="kw2077">std::<span class="me2">atomic_compare_exchange_strong_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_compare_exchange.html"><span class="kw2074">std::<span class="me2">atomic_compare_exchange_weak</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_compare_exchange.html"><span class="kw2075">std::<span class="me2">atomic_compare_exchange_weak_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_add.html"><span class="kw2078">std::<span class="me2">atomic_fetch_add</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_add.html"><span class="kw2079">std::<span class="me2">atomic_fetch_add_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_sub.html"><span class="kw2080">std::<span class="me2">atomic_fetch_sub</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_sub.html"><span class="kw2081">std::<span class="me2">atomic_fetch_sub_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_or.html"><span class="kw2084">std::<span class="me2">atomic_fetch_or</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_or.html"><span class="kw2085">std::<span class="me2">atomic_fetch_or_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_sub.html"><span class="kw2082">std::<span class="me2">atomic_fetch_and</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_fetch_sub.html"><span class="kw2083">std::<span class="me2">atomic_fetch_and_explicit</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_flag_test_and_set</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_flag_test_and_set_explicit</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_flag_clear</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> std<span class="sy4">::</span><span class="me2">atomic_flag_clear_explicit</span><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_thread_fence.html"><span class="kw2100">std::<span class="me2">atomic_thread_fence</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span>
|
|
<span class="kw1">using</span> <a href="cpp-atomic-atomic_signal_fence.html"><span class="kw2101">std::<span class="me2">atomic_signal_fence</span></span></a><span class="sy4">;</span> <span class="co1">// 见描述</span></pre></div>
|
|
</div>
|
|
</div>
|
|
<div class="visualClear"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|