Lunchbox
1.15.0
Multi-threaded C++ toolbox library for all application developers creating high-performance multi-threaded programs.
|
A Future implementation using a boost::function for fulfilment. More...
#include <futureFunction.h>
Public Types | |
typedef boost::function< T() > | Func |
The fulfilling function. | |
Public Member Functions | |
FutureFunction (const Func &func) | |
Public Member Functions inherited from lunchbox::FutureImpl< T > | |
virtual | ~FutureImpl () |
Destruct the future. More... | |
Public Member Functions inherited from lunchbox::Referenced | |
void | ref (const void *holder=0) const |
Increase the reference count. More... | |
bool | unref (const void *holder=0) const |
Decrease the reference count. More... | |
int32_t | getRefCount () const |
void | printHolders (std::ostream &) const |
Protected Member Functions | |
T | wait (const uint32_t) final |
Wait for the promise to be fullfilled. More... | |
bool | isReady () const final |
Protected Member Functions inherited from lunchbox::Referenced | |
Referenced () | |
Construct a new reference-counted object. More... | |
Referenced (const Referenced &) | |
Construct a new copy of a reference-counted object. More... | |
virtual | ~Referenced () |
Destruct a reference-counted object. More... | |
Referenced & | operator= (const Referenced &) |
Assign another object to this object. More... | |
virtual void | notifyFree () |
Protected Attributes | |
Func | func_ |
T | result_ |
A Future implementation using a boost::function for fulfilment.
Not thread safe.
Definition at line 30 of file futureFunction.h.
|
inlinefinalprotectedvirtual |
Implements lunchbox::FutureImpl< T >.
Definition at line 50 of file futureFunction.h.
|
inlinefinalprotectedvirtual |
Wait for the promise to be fullfilled.
May be called multiple times.
timeout | optional timeout in milliseconds. If the future is not ready when the timer goes off a timeout exception is thrown. |
Implements lunchbox::FutureImpl< T >.
Definition at line 40 of file futureFunction.h.