Krita Source Code Documentation
Loading...
Searching...
No Matches
atomic.h File Reference
#include <atomic>

Go to the source code of this file.

Classes

class  Atomic< T >
 

Enumerations

enum  MemoryOrder {
  Relaxed = std::memory_order_relaxed , Consume = std::memory_order_consume , Acquire = std::memory_order_acquire , Release = std::memory_order_release ,
  ConsumeRelease = std::memory_order_acq_rel , AcquireRelease = std::memory_order_acq_rel
}
 

Functions

void signalFenceAcquire ()
 
void signalFenceConsume ()
 
void signalFenceRelease ()
 
void signalFenceSeqCst ()
 
void threadFenceAcquire ()
 
void threadFenceConsume ()
 
void threadFenceRelease ()
 
void threadFenceSeqCst ()
 

Enumeration Type Documentation

◆ MemoryOrder

Enumerator
Relaxed 
Consume 
Acquire 
Release 
ConsumeRelease 
AcquireRelease 

Definition at line 56 of file atomic.h.

56 {
57 Relaxed = std::memory_order_relaxed,
58 Consume = std::memory_order_consume,
59 Acquire = std::memory_order_acquire,
60 Release = std::memory_order_release,
61 ConsumeRelease = std::memory_order_acq_rel,
62 AcquireRelease = std::memory_order_acq_rel,
63};
@ Release
Definition atomic.h:60
@ Acquire
Definition atomic.h:59
@ ConsumeRelease
Definition atomic.h:61
@ AcquireRelease
Definition atomic.h:62
@ Relaxed
Definition atomic.h:57
@ Consume
Definition atomic.h:58

Function Documentation

◆ signalFenceAcquire()

void signalFenceAcquire ( )
inline

Definition at line 21 of file atomic.h.

22{
23 std::atomic_signal_fence(std::memory_order_acquire);
24}

◆ signalFenceConsume()

void signalFenceConsume ( )
inline

Definition at line 16 of file atomic.h.

17{
18 std::atomic_signal_fence(std::memory_order_acquire);
19}

◆ signalFenceRelease()

void signalFenceRelease ( )
inline

Definition at line 26 of file atomic.h.

27{
28 std::atomic_signal_fence(std::memory_order_release);
29}

◆ signalFenceSeqCst()

void signalFenceSeqCst ( )
inline

Definition at line 31 of file atomic.h.

32{
33 std::atomic_signal_fence(std::memory_order_seq_cst);
34}

◆ threadFenceAcquire()

void threadFenceAcquire ( )
inline

Definition at line 41 of file atomic.h.

42{
43 std::atomic_thread_fence(std::memory_order_acquire);
44}

◆ threadFenceConsume()

void threadFenceConsume ( )
inline

Definition at line 36 of file atomic.h.

37{
38 std::atomic_thread_fence(std::memory_order_acquire);
39}

◆ threadFenceRelease()

void threadFenceRelease ( )
inline

Definition at line 46 of file atomic.h.

47{
48 std::atomic_thread_fence(std::memory_order_release);
49}

◆ threadFenceSeqCst()

void threadFenceSeqCst ( )
inline

Definition at line 51 of file atomic.h.

52{
53 std::atomic_thread_fence(std::memory_order_seq_cst);
54}