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
 
MemoryMapManagerm_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 821 of file MemoryMappedFile.h.

Constructor & Destructor Documentation

◆ OperationGuard()

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

Definition at line 780 of file MemoryMappedFile.cc.

◆ ~OperationGuard()

MemoryMapManager::OperationGuard::~OperationGuard ( )

Definition at line 787 of file MemoryMappedFile.cc.

Member Function Documentation

◆ operator bool()

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

Definition at line 826 of file MemoryMappedFile.h.

Member Data Documentation

◆ m_Acquired

bool MemoryMapManager::OperationGuard::m_Acquired
private

Definition at line 835 of file MemoryMappedFile.h.

◆ m_EventDeferral

Uninterruptible MemoryMapManager::OperationGuard::m_EventDeferral
private

Definition at line 833 of file MemoryMappedFile.h.

◆ m_Manager

MemoryMapManager& MemoryMapManager::OperationGuard::m_Manager
private

Definition at line 834 of file MemoryMappedFile.h.


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