The Pedigree Project 0.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MemoryMapManager::OperationGuard Class Reference

#include <MemoryMappedFile.h>

+ Collaboration diagram for MemoryMapManager::OperationGuard:

Public Member Functions

 OperationGuard (MemoryMapManager &manager, bool tryOnly=false)
 
 operator bool () const
 

Private Member Functions

 NOT_COPYABLE_OR_ASSIGNABLE (OperationGuard)
 

Private Attributes

Uninterruptible m_EventDeferral
 
MemoryMapManager & m_Manager
 
bool m_Acquired
 

Detailed Description

A terminal-safe, same-thread recursive gate for manager operations.

The gate keeps object lists and object lifetimes stable while allowing the short cache Spinlock to be released before invoking an object. Try-only acquisition excludes recursive entry for pressure recovery.

Definition at line 827 of file MemoryMappedFile.h.

Constructor & Destructor Documentation

◆ OperationGuard()

MemoryMapManager::OperationGuard::OperationGuard ( MemoryMapManager &  manager,
bool  tryOnly = false 
)
explicit

Definition at line 790 of file MemoryMappedFile.cc.

◆ ~OperationGuard()

MemoryMapManager::OperationGuard::~OperationGuard ( )

Definition at line 797 of file MemoryMappedFile.cc.

Member Function Documentation

◆ operator bool()

MemoryMapManager::OperationGuard::operator bool ( ) const
inlineexplicit

Definition at line 832 of file MemoryMappedFile.h.

Member Data Documentation

◆ m_Acquired

bool MemoryMapManager::OperationGuard::m_Acquired
private

Definition at line 841 of file MemoryMappedFile.h.

◆ m_EventDeferral

Uninterruptible MemoryMapManager::OperationGuard::m_EventDeferral
private

Definition at line 839 of file MemoryMappedFile.h.

◆ m_Manager

MemoryMapManager& MemoryMapManager::OperationGuard::m_Manager
private

Definition at line 840 of file MemoryMappedFile.h.


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