unilink  0.4.3
A simple C++ library for unified async communication
unilink::concurrency::ThreadSafeCounter Class Reference

Thread-safe counter with atomic operations. More...

#include <thread_safe_state.hpp>

Public Member Functions

 ThreadSafeCounter (int64_t initial_value=0)
 
int64_t get () const noexcept
 
int64_t increment () noexcept
 
int64_t decrement () noexcept
 
int64_t add (int64_t value) noexcept
 
int64_t subtract (int64_t value) noexcept
 
bool compare_and_set (int64_t expected, int64_t desired) noexcept
 
int64_t exchange (int64_t new_value) noexcept
 
void reset () noexcept
 

Detailed Description

Thread-safe counter with atomic operations.

Definition at line 123 of file thread_safe_state.hpp.

Constructor & Destructor Documentation

◆ ThreadSafeCounter()

unilink::concurrency::ThreadSafeCounter::ThreadSafeCounter ( int64_t  initial_value = 0)
inlineexplicit

Definition at line 324 of file thread_safe_state.hpp.

Member Function Documentation

◆ add()

int64_t unilink::concurrency::ThreadSafeCounter::add ( int64_t  value)
inlinenoexcept

Definition at line 332 of file thread_safe_state.hpp.

◆ compare_and_set()

bool unilink::concurrency::ThreadSafeCounter::compare_and_set ( int64_t  expected,
int64_t  desired 
)
inlinenoexcept

Definition at line 336 of file thread_safe_state.hpp.

◆ decrement()

int64_t unilink::concurrency::ThreadSafeCounter::decrement ( )
inlinenoexcept

Definition at line 330 of file thread_safe_state.hpp.

◆ exchange()

int64_t unilink::concurrency::ThreadSafeCounter::exchange ( int64_t  new_value)
inlinenoexcept

Definition at line 340 of file thread_safe_state.hpp.

◆ get()

int64_t unilink::concurrency::ThreadSafeCounter::get ( ) const
inlinenoexcept

Definition at line 326 of file thread_safe_state.hpp.

◆ increment()

int64_t unilink::concurrency::ThreadSafeCounter::increment ( )
inlinenoexcept

Definition at line 328 of file thread_safe_state.hpp.

◆ reset()

void unilink::concurrency::ThreadSafeCounter::reset ( )
inlinenoexcept

Definition at line 342 of file thread_safe_state.hpp.

◆ subtract()

int64_t unilink::concurrency::ThreadSafeCounter::subtract ( int64_t  value)
inlinenoexcept

Definition at line 334 of file thread_safe_state.hpp.


The documentation for this class was generated from the following file: