#include <thread.h>
Inheritance diagram for ucommon::shared_release:
Public Member Functions | |
SharedObject * | get (void) |
Get pointer to singleton object that we have shared lock for. | |
shared_release & | operator= (SharedPointer &pointer) |
Assign shared lock access to shared singleton. | |
void | release (void) |
Manually release access to shared singleton object. | |
shared_release (SharedPointer &pointer) | |
Access lock a shared singleton instance from a SharedPointer. | |
~shared_release () | |
Auto-unlock shared lock for singleton instance protected by shared pointer. | |
Protected Member Functions | |
shared_release (shared_release &object) | |
Construct a shared object instance base from an existing instance. | |
shared_release () | |
Create an unassigned shared singleton object pointer base. | |
Protected Attributes | |
SharedPointer * | ptr |
Shared lock for protected singleton. |
This is used as a base class for the templated shared_instance class that uses shared access locking through the SharedPointer class. When the shared instance falls out of scope, the SharedPointer lock is released. The pointer typed object must be based on the SharedObject class.
Definition at line 1535 of file thread.h.
ucommon::shared_release::shared_release | ( | shared_release & | object | ) | [protected] |
Construct a shared object instance base from an existing instance.
This will assign an additional shared lock.
object | to copy from. |
ucommon::shared_release::shared_release | ( | SharedPointer & | pointer | ) |
Access lock a shared singleton instance from a SharedPointer.
pointer | of shared pointer to assign from. |
ucommon::shared_release::~shared_release | ( | ) |
Auto-unlock shared lock for singleton instance protected by shared pointer.
This is used to unlock when the instance template falls out of scope.
SharedObject* ucommon::shared_release::get | ( | void | ) |
Get pointer to singleton object that we have shared lock for.
Reimplemented in ucommon::shared_instance< T >.
shared_release& ucommon::shared_release::operator= | ( | SharedPointer & | pointer | ) |
Assign shared lock access to shared singleton.
If an existing shared lock is held for another pointer, it is released.
pointer | access for shared object. |