|
UCommon
|
An array of reusable objects. More...
#include <reuse.h>


Public Member Functions | |
| ~ArrayReuse () | |
| Destroy reusable private heap array. | |
Protected Member Functions | |
| ArrayReuse (size_t objsize, unsigned c) | |
| ArrayReuse (size_t objsize, unsigned c, void *memory) | |
| bool | avail (void) const |
| ReusableObject * | get (timeout_t timeout) |
| ReusableObject * | get (void) |
| ReusableObject * | request (void) |
Protected Member Functions inherited from ucommon::ReusableAllocator | |
| ReusableObject * | next (ReusableObject *object) |
| Get next reusable object in the pool. More... | |
| void | release (ReusableObject *object) |
| Release resuable object. More... | |
| ReusableAllocator () | |
| Initialize reusable allocator through a conditional. More... | |
Protected Member Functions inherited from ucommon::Conditional | |
| void | broadcast (void) |
| Signal the conditional to release all waiting threads. | |
| Conditional () | |
| Initialize and construct conditional. | |
| void | signal (void) |
| Signal the conditional to release one waiting thread. | |
| bool | wait (timeout_t timeout) |
| Conditional wait for signal on millisecond timeout. More... | |
| bool | wait (struct timespec *timeout) |
| Conditional wait for signal on timespec timeout. More... | |
| void | wait (void) |
| Wait (block) until signalled. | |
| ~Conditional () | |
| Destroy conditional, release any blocked threads. | |
Protected Member Functions inherited from ucommon::ConditionMutex | |
| ConditionMutex () | |
| Initialize and construct conditional. | |
| void | lock (void) |
| Lock the conditional's supporting mutex. | |
| void | unlock (void) |
| Unlock the conditional's supporting mutex. | |
| ~ConditionMutex () | |
| Destroy conditional, release any blocked threads. | |
Additional Inherited Members | |
Static Protected Member Functions inherited from ucommon::Conditional | |
| static pthread_condattr_t * | initializer (void) |
| Support function for getting conditional attributes for realtime scheduling. More... | |
| static void | set (struct timespec *hires, timeout_t timeout) |
| Convert a millisecond timeout into use for high resolution conditional timers. More... | |
Protected Attributes inherited from ucommon::ReusableAllocator | |
| ReusableObject * | freelist |
| unsigned | waiting |
Protected Attributes inherited from ucommon::Conditional | |
| pthread_cond_t | cond |
Protected Attributes inherited from ucommon::ConditionMutex | |
| pthread_mutex_t | mutex |
Static Protected Attributes inherited from ucommon::Conditional | |
| static attribute | attr |
An array of reusable objects.
This class is used to support the array_use template. A pool of objects are created which can be allocated as needed. Deallocated objects are returned to the pool so they can be reallocated later. This is a private fixed size heap.
1.8.14