All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
osl::misc::NonBlockDelete Class Reference

#include <nonBlockDelete.h>

Inheritance diagram for osl::misc::NonBlockDelete:
Inheritance graph
[legend]
Collaboration diagram for osl::misc::NonBlockDelete:
Collaboration graph
[legend]

Classes

class  Queue
 
struct  Runner
 

Static Public Member Functions

template<class T >
static void planDelete (T *ptr)
 別スレッドに消去を依頼する More...
 
template<class T >
static void reset (boost::shared_ptr< T > &ptr)
 make ptr empty immediately More...
 
static void resetAny (boost::shared_ptr< void > &)
 
static void deleteAll ()
 空になるまで待つまたは自分で消去する More...
 
static bool deleteOne ()
 
static int waiting ()
 

Private Member Functions

 NonBlockDelete ()
 
 ~NonBlockDelete ()
 
void push_back (boost::shared_ptr< void > &)
 

Static Private Member Functions

static NonBlockDeleteinstance ()
 

Private Attributes

boost::shared_ptr< Queuequeue
 

Friends

struct Runner
 

Detailed Description

Definition at line 17 of file nonBlockDelete.h.

Constructor & Destructor Documentation

osl::misc::NonBlockDelete::NonBlockDelete ( )
private

Definition at line 50 of file nonBlockDelete.cc.

References queue, and Runner.

osl::misc::NonBlockDelete::~NonBlockDelete ( )
private

Definition at line 57 of file nonBlockDelete.cc.

References finish.

Member Function Documentation

void osl::misc::NonBlockDelete::deleteAll ( )
static

空になるまで待つまたは自分で消去する

Definition at line 91 of file nonBlockDelete.cc.

References queue.

bool osl::misc::NonBlockDelete::deleteOne ( )
static

Definition at line 103 of file nonBlockDelete.cc.

References queue.

osl::misc::NonBlockDelete & osl::misc::NonBlockDelete::instance ( )
staticprivate

Definition at line 43 of file nonBlockDelete.cc.

template<class T >
static void osl::misc::NonBlockDelete::planDelete ( T *  ptr)
inlinestatic

別スレッドに消去を依頼する

Definition at line 22 of file nonBlockDelete.h.

References resetAny().

void osl::misc::NonBlockDelete::push_back ( boost::shared_ptr< void > &  ptr)
private

Definition at line 81 of file nonBlockDelete.cc.

References finish.

template<class T >
static void osl::misc::NonBlockDelete::reset ( boost::shared_ptr< T > &  ptr)
inlinestatic

make ptr empty immediately

Definition at line 32 of file nonBlockDelete.h.

References resetAny().

void osl::misc::NonBlockDelete::resetAny ( boost::shared_ptr< void > &  ptr)
static

Definition at line 72 of file nonBlockDelete.cc.

References finish, and osl::OslConfig::memoryUseRatio().

Referenced by planDelete(), and reset().

int osl::misc::NonBlockDelete::waiting ( )
static

Definition at line 66 of file nonBlockDelete.cc.

References queue.

Friends And Related Function Documentation

friend struct Runner
friend

Definition at line 61 of file nonBlockDelete.h.

Referenced by NonBlockDelete().

Member Data Documentation

boost::shared_ptr<Queue> osl::misc::NonBlockDelete::queue
private

Definition at line 58 of file nonBlockDelete.h.

Referenced by deleteAll(), deleteOne(), NonBlockDelete(), and waiting().


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