counter_t Class Reference |
Public Member Functions | |
counter_t () | |
bool | decrement () |
void | increment () |
bool | is_one () const |
Detailed Description
A counter_t is a noncopyable thread safe counter, useful for managing the reference count of a shared resource.
- Rationale:
counter_t wraps reference count operations that require thread safety into a single class. While this does not guarantee client code will be thread safe, it helps to take a step in that direction. It also cleans up client code and keeps thread-handling scoped to a single file. Consider copy_on_write as an example class that leverages counter_t.
- Note:
- The counter_t class is thread safe when compiled with BOOST_HAS_THREADS defined.
Definition at line 74 of file counter.hpp.
Constructor & Destructor Documentation
counter_t | ( | ) |
Default constructor. The counter is initialized to 1.
Definition at line 80 of file counter.hpp.
Member Function Documentation
bool decrement | ( | ) |
Decrements the counter by one.
- Returns:
true
if the counter is zero at the end of this operation;false
otherwise.
Definition at line 90 of file counter.hpp.
void increment | ( | ) |
Increments the counter by one.
Definition at line 85 of file counter.hpp.
bool is_one | ( | ) | const |
Checks to see if the counter is one.
- Returns:
true
if the counter is one;false
otherwise.
Definition at line 95 of file counter.hpp.