Atomic counter is a class that allows perform counting in thread safe way. More...
#include <cppdb/atomic_counter.h>
Public Member Functions | |
atomic_counter (long v) | |
long | operator++ () |
long | operator-- () |
operator long () const |
Atomic counter is a class that allows perform counting in thread safe way.
It is mainly used for reference counting. Under Windows it uses Interlocked API, under other platforms it used built-in atomic operations or fails back to pthreads locking implementation.
Notes:
cppdb::atomic_counter::atomic_counter | ( | long | v | ) | [explicit] |
Create a counter with initial value v
cppdb::atomic_counter::operator long | ( | ) | const [inline] |
Return current value - atomically
long cppdb::atomic_counter::operator++ | ( | ) | [inline] |
Increment and return the result after increment atomically
long cppdb::atomic_counter::operator-- | ( | ) | [inline] |
Decrement and return the result after decrement atomically