Inheritance diagram for MemStoreRr:
Collaboration diagram for MemStoreRr:

Public Types

typedef void(RegisteredRunner::* Method) ()
 a pointer to one of the above notification methods More...
 

Public Member Functions

 MemStoreRr ()
 
void finalizeConfig () override
 
void claimMemoryNeeds () override
 
void useConfig () override
 
 ~MemStoreRr () override
 
virtual void bootstrapConfig ()
 
virtual void startReconfigure ()
 
virtual void syncConfig ()
 
virtual void startShutdown ()
 
virtual void endingShutdown ()
 
virtual void finishShutdown ()
 Meant for cleanup of services needed by the already destroyed objects. More...
 

Protected Member Functions

void create () override
 called when the runner should create a new memory segment More...
 
virtual void open ()
 

Private Attributes

Ipc::Mem::Owner< Ipc::Mem::PageStack > * spaceOwner
 free slices Owner More...
 
MemStoreMap::OwnermapOwner
 primary map Owner More...
 
Ipc::Mem::Owner< MemStoreMapExtras > * extrasOwner
 PageIds Owner. More...
 

Detailed Description

reports our needs for shared memory pages to Ipc::Mem::Pages; decides whether to use a shared memory cache or checks its configuration; and initializes shared memory segments used by MemStore

Definition at line 970 of file MemStore.cc.

Member Typedef Documentation

◆ Method

typedef void(RegisteredRunner::* RegisteredRunner::Method) ()
inherited

Definition at line 94 of file RunnersRegistry.h.

Constructor & Destructor Documentation

◆ MemStoreRr()

MemStoreRr::MemStoreRr ( )
inline

Definition at line 974 of file MemStore.cc.

◆ ~MemStoreRr()

MemStoreRr::~MemStoreRr ( )
override

Definition at line 1048 of file MemStore.cc.

References extrasOwner, mapOwner, and spaceOwner.

Member Function Documentation

◆ bootstrapConfig()

virtual void RegisteredRunner::bootstrapConfig ( )
inlinevirtualinherited

Called right before parsing squid.conf. Meant for initializing/preparing configuration parsing facilities.

Reimplemented in NtlmAuthRr.

Definition at line 46 of file RunnersRegistry.h.

Referenced by SquidMain().

◆ claimMemoryNeeds()

void MemStoreRr::claimMemoryNeeds ( )
overridevirtual

Called after finalizeConfig(). Meant for announcing memory reservations before memory is allocated.

Reimplemented from RegisteredRunner.

Definition at line 993 of file MemStore.cc.

References Ipc::Mem::PageId::cachePage, MemStore::EntryLimit(), and Ipc::Mem::NotePageNeed().

◆ create()

◆ endingShutdown()

virtual void RegisteredRunner::endingShutdown ( )
inlinevirtualinherited

Called after shutdown_lifetime grace period ends and before stopping the main loop. At least one main loop iteration is guaranteed after this call. Meant for cleanup and state saving that may require other modules.

Reimplemented in Auth::CredentialCacheRr, ConnStateData, Dns::ConfigRr, and IdleConnList.

Definition at line 84 of file RunnersRegistry.h.

Referenced by SignalEngine::FinalShutdownRunners().

◆ finalizeConfig()

void MemStoreRr::finalizeConfig ( )
overridevirtual

Called after parsing squid.conf. Meant for setting configuration options that depend on other configuration options and were not explicitly configured.

Reimplemented from RegisteredRunner.

Definition at line 999 of file MemStore.cc.

References Config, YesNoNone::configure(), YesNoNone::configured(), DBG_IMPORTANT, debugs, Ipc::Mem::Segment::Enabled(), fatal(), SquidConfig::memMaxSize, SquidConfig::memShared, Ipc::Mem::PageSize(), MemStore::Requested(), and UsingSmp().

◆ finishShutdown()

virtual void RegisteredRunner::finishShutdown ( )
inlinevirtualinherited

Definition at line 91 of file RunnersRegistry.h.

Referenced by RunRegistered(), SquidShutdown(), TestRock::tearDown(), and watch_child().

◆ open()

virtual void Ipc::Mem::RegisteredRunner::open ( )
inlineprotectedvirtualinherited

called when the runner should open a previously created segment, not needed if segments are opened in constructor or init methods

Reimplemented in CollapsedForwardingRr, and SharedMemPagesRr.

Definition at line 95 of file Segment.h.

◆ startReconfigure()

virtual void RegisteredRunner::startReconfigure ( )
inlinevirtualinherited

Called after receiving a reconfigure request and before parsing squid.conf. Meant for modules that need to prepare for their configuration being changed [outside their control]. The changes end with the syncConfig() event.

Reimplemented in Dns::ConfigRr.

Definition at line 67 of file RunnersRegistry.h.

Referenced by mainReconfigureStart().

◆ startShutdown()

virtual void RegisteredRunner::startShutdown ( )
inlinevirtualinherited

Called after receiving a shutdown request and before stopping the main loop. At least one main loop iteration is guaranteed after this call. Meant for cleanup and state saving that may require other modules.

Reimplemented in ConnStateData, and Rock::Rebuild.

Definition at line 78 of file RunnersRegistry.h.

Referenced by SignalEngine::doShutdown().

◆ syncConfig()

virtual void RegisteredRunner::syncConfig ( )
inlinevirtualinherited

Called after parsing squid.conf during reconfiguration. Meant for adjusting the module state based on configuration changes.

Reimplemented in Auth::CredentialCacheRr, and PeerPoolMgrsRr.

Definition at line 71 of file RunnersRegistry.h.

Referenced by mainReconfigureFinish().

◆ useConfig()

void MemStoreRr::useConfig ( )
overridevirtual

Called after claimMemoryNeeds(). Meant for activating modules and features using a finalized configuration with known memory requirements.

Reimplemented from Ipc::Mem::RegisteredRunner.

Definition at line 1020 of file MemStore.cc.

References assert, Config, YesNoNone::configured(), SquidConfig::memShared, and Ipc::Mem::RegisteredRunner::useConfig().

Member Data Documentation

◆ extrasOwner

Ipc::Mem::Owner<MemStoreMapExtras>* MemStoreRr::extrasOwner
private

Definition at line 987 of file MemStore.cc.

Referenced by ~MemStoreRr(), and create().

◆ mapOwner

MemStoreMap::Owner* MemStoreRr::mapOwner
private

Definition at line 986 of file MemStore.cc.

Referenced by ~MemStoreRr(), and create().

◆ spaceOwner

Ipc::Mem::Owner<Ipc::Mem::PageStack>* MemStoreRr::spaceOwner
private

Definition at line 985 of file MemStore.cc.

Referenced by ~MemStoreRr(), and create().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors