Difference between revisions of "cpp/atomic/atomic signal fence"
From cppreference.com
(fmt) |
m (Text replace - "{{mark c++11 feature}}" to "{{mark since c++11}}") |
||
Line 3: | Line 3: | ||
{{ddcl list begin}} | {{ddcl list begin}} | ||
{{ddcl list header | atomic }} | {{ddcl list header | atomic }} | ||
− | {{ddcl list item | notes={{mark c++11 | + | {{ddcl list item | notes={{mark since c++11}} | 1= |
extern "C" void atomic_signal_fence( std::memory_order order ); | extern "C" void atomic_signal_fence( std::memory_order order ); | ||
}} | }} |
Revision as of 14:46, 24 December 2011
Template:cpp/atomic/sidebar Template:ddcl list begin <tr class="t-dsc-header">
<td>Defined in header
</td>
<atomic>
<td></td> <td></td> </tr> <tr class="t-dcl ">
<td >extern "C" void atomic_signal_fence( std::memory_order order );
</td>
<td class="t-dcl-nopad"> </td> <td > (since C++11) </td> </tr> Template:ddcl list end
Establishes memory synchronization ordering of non-atomic and relaxed atomic accesses, as instructed by order
, between a thread and a signal handler executed on the same thread. This is equivalent to Template:cpp, except no CPU instructions for memory ordering are issued. Only reordering of the instructions by the compiler is suppressed as order
instructs, e.g. writes cannot be moved past Template:cpp and reads cannot be moved ahead of Template:cpp.
Contents |
Parameters
order | - | the memory ordering executed by this fence |
Return value
(none)
Exceptions
noexcept specification:
noexcept