Similar to class Owner, but calls method TryAcquireSharedTimed instead of Acquire and ReleaseShared instead of Shared. The result is retrievable with method IsOwning().
TOwnable | The type to own. Requirements are to have methods TryAcquireSharedTimed and ReleaseShared available. |
#include <owner.hpp>
Public Method Index: | |
template<typename TTimeValue > | |
OwnerSharedTimed (TOwnable &ownable, const TTimeValue &time, const CallerInfo &ci) | |
~OwnerSharedTimed () | |
Destructor. Invokes Release() on member owned. | |
bool | IsOwning () const noexcept |
Protected Field Index: | |
CallerInfo | dbgCI |
Caller information. Available only with debug-builds. | |
bool | isOwning |
The result of the call to TryAcquire. | |
TOwnable & | owned |
The resource to acquire and release. | |
|
protected |
|
protected |
|
protected |
|
inline |
Constructor. Invokes TryAcquire() on member owned.
TTimeValue | Type of time parameter accepted with construction and passed to method TOwnable::TryAcquireTimed. Usually this is type Ticks or Ticks::Duration. |
time | The duration to wait for, or point in time to wait until. |
ownable | The ownable to acquire. |
ci | Caller information. |
|
inline |
|
inlinenoexcept |