Sends and handles collapsed forwarding notifications.

#include <CollapsedForwarding.h>

Collaboration diagram for CollapsedForwarding:

Static Public Member Functions

static void Init ()
 open shared memory segment More...
 
static void Broadcast (const StoreEntry &e, const bool includingThisWorker=false)
 notify other workers about changes in entry state (e.g., new data) More...
 
static void Broadcast (const sfileno index, const bool includingThisWorker)
 
static void Notify (const int workerId)
 kick worker with empty IPC queue More...
 
static void HandleNewData (const char *const when)
 handle new data messages in IPC queue More...
 
static void HandleNotification (const Ipc::TypedMsgHdr &msg)
 handle queue push notifications from worker or disker More...
 

Private Types

typedef Ipc::MultiQueue Queue
 

Static Private Attributes

static std::unique_ptr< Queuequeue
 IPC queue. More...
 

Detailed Description

Definition at line 23 of file CollapsedForwarding.h.

Member Typedef Documentation

Definition at line 46 of file CollapsedForwarding.h.

Member Function Documentation

void CollapsedForwarding::Broadcast ( const sfileno  index,
const bool  includingThisWorker 
)
static

notify other workers about state changes in Transient entry at the given xitTable.index use Broadcast(StoreEntry) variant if you have a StoreEntry object

Definition at line 69 of file CollapsedForwarding.cc.

References Config, DBG_IMPORTANT, debugs, KidIdentifier, Notify(), queue, CollapsedForwardingMsg::sender, SquidConfig::workers, and CollapsedForwardingMsg::xitIndex.

void CollapsedForwarding::HandleNewData ( const char *const  when)
static
void CollapsedForwarding::HandleNotification ( const Ipc::TypedMsgHdr msg)
static

Definition at line 131 of file CollapsedForwarding.cc.

References assert, debugs, Ipc::TypedMsgHdr::getInt(), HandleNewData(), and queue.

Referenced by Ipc::Strand::receive().

void CollapsedForwarding::Init ( )
static

Definition at line 48 of file CollapsedForwarding.cc.

References IamWorkerProcess(), KidIdentifier, Must, queue, ShmLabel, and UsingSmp().

Referenced by CollapsedForwardingRr::open().

void CollapsedForwarding::Notify ( const int  workerId)
static

Member Data Documentation

std::unique_ptr< CollapsedForwarding::Queue > CollapsedForwarding::queue
staticprivate

Definition at line 47 of file CollapsedForwarding.h.

Referenced by Broadcast(), HandleNewData(), HandleNotification(), and Init().


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

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors