#include <thread.h>
Inheritance diagram for ucommon::locked_release:
Public Member Functions | |
locked_release (LockedPointer &pointer) | |
Construct a locked object instance base from a LockedPointer. | |
locked_release & | operator= (LockedPointer &pointer) |
Assign a locked object pointer. | |
void | release (void) |
Manually release the object reference. | |
~locked_release () | |
Auto-release pointer to locked object instance. | |
Protected Member Functions | |
locked_release (locked_release &object) | |
Construct a locked object instance base from an existing instance. | |
locked_release () | |
Create an unassigned locked object pointer base. | |
Protected Attributes | |
ObjectProtocol * | object |
locked object protected by locked_release |
This is used as a base class for the templated locked_instance class that uses the managed LockedPointer to assign a reference to an object. When the locked instance falls out of scope, the object is derefenced. Ideally the pointer typed object should be based on the reference counted object class.
Definition at line 1482 of file thread.h.
ucommon::locked_release::locked_release | ( | locked_release & | object | ) | [protected] |
Construct a locked object instance base from an existing instance.
This will create a duplicate (retained) reference.
object | to copy from. |
ucommon::locked_release::locked_release | ( | LockedPointer & | pointer | ) |
Construct a locked object instance base from a LockedPointer.
References a retained instance of the underlying object from the LockedPointer.
pointer | of locked pointer to assign from. |
ucommon::locked_release::~locked_release | ( | ) |
Auto-release pointer to locked object instance.
This is used to release a reference when the pointer template falls out of scope.
locked_release& ucommon::locked_release::operator= | ( | LockedPointer & | pointer | ) |
Assign a locked object pointer.
If an existing object is already assigned, the existing pointer is released.
pointer | reference through locked object. |