Back to TILs

C++ atomic_02

Date: 2024-02-27Last modified: 2024-02-27

Table of contents

Categorization of atomic operations


  std::atomic<int> x;

  x.store( 5 );

  x.store( 10, std::memory_order_release );

  x.load( std::memory_order_acquire );

  int value = 11;

  bool ret_val = x.compare_exchange_weak(
      value,                       //
      13,                          //
      std::memory_order_release,   // for success scenario
      std::memory_order_relaxed ); // for failure scenario

Possible output


References