class CCL::Threading::AtomicInt

Overview

Thread and MP-safe integer variable. More…

#include <threadsync.h>

class AtomicInt
{
public:
    // construction

    AtomicInt ();
    AtomicInt (const AtomicInt& a);

    // methods

    int getValue () const;
    int assign (int v);
    int add (int v);
    int increment ();
    int decrement ();
    tbool testAndSet (int value, int comperand);
    operator const int () const;
    AtomicInt& operator = (int v);
    AtomicInt& operator ++ ();
    AtomicInt& operator -- ();
    AtomicInt& operator += (int v);
    AtomicInt& operator -= (int v);
};

Detailed Documentation

Thread and MP-safe integer variable.

Methods

int getValue () const

Get current value.

int assign (int v)

Assign new value, returns old value.

int add (int v)

Perform atomic addition, returns old value.

int increment ()

Increment by one, returns old value.

int decrement ()

Decrement value by one, returns old value.

tbool testAndSet (int value, int comperand)

Set only if current value equals comperand, returns true if value was set.

operator const int () const

Cast to plain integer.