|
C++ Actor Framework 0.19
|
Base class for reference counted objects with an atomic reference count. More...
#include <ref_counted.hpp>
Public Types | |
| using | super = detail::atomic_ref_counted |
Friends | |
| void | intrusive_ptr_add_ref (const ref_counted *p) noexcept |
| void | intrusive_ptr_release (const ref_counted *p) noexcept |
Related Functions | |
(Note that these are not member functions.) | |
| template<class T , class... Ts> | |
| intrusive_cow_ptr< T > | make_copy_on_write (Ts &&... xs) |
Constructs an object of type T in an intrusive_cow_ptr. | |
| template<class T , class... Ts> | |
| intrusive_ptr< T > | make_counted (Ts &&... xs) |
Constructs an object of type T in an intrusive_ptr. | |
Additional Inherited Members | |
Public Member Functions inherited from caf::detail::atomic_ref_counted | |
| atomic_ref_counted (const atomic_ref_counted &) | |
| atomic_ref_counted & | operator= (const atomic_ref_counted &) |
| void | ref () const noexcept |
| Increases reference count by one. | |
| void | deref () const noexcept |
Decreases reference count by one and calls request_deletion when it drops to zero. | |
| bool | unique () const noexcept |
| Queries whether there is exactly one reference. | |
| size_t | get_reference_count () const noexcept |
| Queries the current reference count for this object. | |
Protected Attributes inherited from caf::detail::atomic_ref_counted | |
| std::atomic< size_t > | rc_ |
Base class for reference counted objects with an atomic reference count.
Serves the requirements of intrusive_ptr.
ref_counted start with a reference count of 1.
|
related |
Constructs an object of type T in an intrusive_cow_ptr.
@relatealso intrusive_cow_ptr