Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
ibis::util::guardBase Class Reference

A class hierarchy for cleaning up after durable resources. More...

#include <util.h>

Inheritance diagram for ibis::util::guardBase:
ibis::util::guardImpl0< F > ibis::util::guardImpl1< F, A > ibis::util::guardImpl2< F, A1, A2 > ibis::util::guardObj0< C, F >

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_
 

Detailed Description

A class hierarchy for cleaning up after durable resources.

It follows the example set by Loki::ScopeGuard, but simpler.

Constructor & Destructor Documentation

ibis::util::guardBase::guardBase ( const guardBase rhs)
inlineprotected

!< Default constructor.

Copy constructor. Allows all derived classes to use the compiler generated copy constructors.

Member Function Documentation

template<typename T >
static void ibis::util::guardBase::cleanup ( T &  task)
throw (
)
inlinestaticprotected
void ibis::util::guardBase::dismiss ( ) const
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().


The documentation for this class was generated from the following file:

Make It A Bit Faster
Contact us
Disclaimers
FastBit source code
FastBit mailing list archive