A class hierarchy for cleaning up after durable resources. More...
#include <util.h>
Public Member Functions | |
| void | dismiss () const |
| Tell the guard that it does not need to invoke clean up function any more. More... | |
Protected Member Functions | |
| guardBase (const guardBase &rhs) | |
| !< Default constructor. More... | |
| ~guardBase () | |
| Destructor. No need to be virtual. | |
Static Protected Member Functions | |
| template<typename T > | |
| static void | cleanup (T &task) throw () |
| A template to invoke the function registered. More... | |
Protected Attributes | |
| volatile bool | done_ |
A class hierarchy for cleaning up after durable resources.
It follows the example set by Loki::ScopeGuard, but simpler.
|
inlineprotected |
!< Default constructor.
Copy constructor. Allows all derived classes to use the compiler generated copy constructors.
|
inlinestaticprotected | ||||||||||||||
A template to invoke the function registered.
Also absorbs all exceptions.
Referenced by ibis::util::guardImpl0< F >::~guardImpl0(), ibis::util::guardImpl1< F, A >::~guardImpl1(), ibis::util::guardImpl2< F, A1, A2 >::~guardImpl2(), and ibis::util::guardObj0< C, F >::~guardObj0().
|
inline |
Tell the guard that it does not need to invoke clean up function any more.
Referenced by ibis::blob::append(), ibis::bord::evaluateTerms(), ibis::part::reorderValues(), ibis::blob::writeData(), and ibis::bord::xgroupby().
|
| |