libfoedus-core
FOEDUS Core Library
foedus::proc::ProcManagerControlBlock Struct Reference

This small control block is used to synchronize the access to the array. More...

Detailed Description

This small control block is used to synchronize the access to the array.

Definition at line 36 of file proc_manager_pimpl.hpp.

#include <proc_manager_pimpl.hpp>

Collaboration diagram for foedus::proc::ProcManagerControlBlock:

Public Member Functions

 ProcManagerControlBlock ()=delete
 
 ~ProcManagerControlBlock ()=delete
 
void initialize ()
 
void uninitialize ()
 

Public Attributes

soc::SharedMutex lock_
 Mutex to protect data. More...
 
LocalProcId count_
 

Constructor & Destructor Documentation

foedus::proc::ProcManagerControlBlock::ProcManagerControlBlock ( )
delete
foedus::proc::ProcManagerControlBlock::~ProcManagerControlBlock ( )
delete

Member Function Documentation

void foedus::proc::ProcManagerControlBlock::initialize ( )
inline

Definition at line 41 of file proc_manager_pimpl.hpp.

References count_, foedus::soc::SharedMutex::initialize(), and lock_.

Referenced by foedus::proc::ProcManagerPimpl::initialize_once().

41  {
42  lock_.initialize();
43  count_ = 0;
44  }
void initialize(bool recursive=false)
soc::SharedMutex lock_
Mutex to protect data.

Here is the call graph for this function:

Here is the caller graph for this function:

void foedus::proc::ProcManagerControlBlock::uninitialize ( )
inline

Definition at line 45 of file proc_manager_pimpl.hpp.

References lock_, and foedus::soc::SharedMutex::uninitialize().

Referenced by foedus::proc::ProcManagerPimpl::uninitialize_once().

45  {
47  }
soc::SharedMutex lock_
Mutex to protect data.

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

soc::SharedMutex foedus::proc::ProcManagerControlBlock::lock_

Mutex to protect data.

Read access via process ID does not need a lock (because we only append to the last). Modifications and reads via name (because it's sorted) needs to take a lock.

Definition at line 54 of file proc_manager_pimpl.hpp.

Referenced by initialize(), foedus::proc::ProcManagerPimpl::insert(), and uninitialize().


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