NCBI C++ ToolKit
Classes | Functions | Variables
rcu.cpp File Reference
#include "task_server_pch.hpp"
#include "rcu.hpp"
#include "threads_man.hpp"
+ Include dependency graph for rcu.cpp:

Go to the source code of this file.

Go to the SVN repository for this file.

Classes

struct  SRCUInfo
 
class  CFakeRCUUser
 

Functions

static void s_RCUExecuteCalls (SRCUInfo *rcu)
 
static void s_RCUMoveGPMarkers (SRCUInfo *rcu)
 
static void s_RCUNoteStartedGP (SRCUInfo *rcu)
 
static void s_RCUNoteGPorStartNew (SRCUInfo *rcu)
 
void RCUPassQS (SRCUInfo *rcu)
 
bool RCUHasCalls (SRCUInfo *rcu)
 
void RCUInitNewThread (SSrvThread *thr)
 
void RCUFinalizeThread (SSrvThread *thr)
 

Variables

static CMiniMutex s_RCULock
 
static Uint1 s_FinishedGP = 0
 
static Uint1 s_CurrentGP = 0
 
static TSrvThreadNum s_ThreadsPassedQS = 0
 
static TSrvThreadNum s_ThreadsEnteredGP = 0
 
static TSrvThreadNum s_ActiveThreads = 0
 

Function Documentation

◆ RCUFinalizeThread()

void RCUFinalizeThread ( SSrvThread thr)

◆ RCUHasCalls()

bool RCUHasCalls ( SRCUInfo rcu)

Definition at line 137 of file rcu.cpp.

References SRCUInfo::calls.

Referenced by RCUFinalizeThread(), s_PerJiffyTasks_Worker(), and s_ServiceThreadMain().

◆ RCUInitNewThread()

void RCUInitNewThread ( SSrvThread thr)

◆ RCUPassQS()

void RCUPassQS ( SRCUInfo rcu)

◆ s_RCUExecuteCalls()

static void s_RCUExecuteCalls ( SRCUInfo rcu)
static

Definition at line 74 of file rcu.cpp.

References SRCUInfo::calls, CSrvRCUUser::ExecuteRCU(), and SRCUInfo::gp_marker_cur.

Referenced by RCUPassQS().

◆ s_RCUMoveGPMarkers()

static void s_RCUMoveGPMarkers ( SRCUInfo rcu)
inlinestatic

◆ s_RCUNoteGPorStartNew()

static void s_RCUNoteGPorStartNew ( SRCUInfo rcu)
static

◆ s_RCUNoteStartedGP()

static void s_RCUNoteStartedGP ( SRCUInfo rcu)
inlinestatic

Variable Documentation

◆ s_ActiveThreads

TSrvThreadNum s_ActiveThreads = 0
static

Definition at line 68 of file rcu.cpp.

Referenced by RCUFinalizeThread(), RCUInitNewThread(), and s_RCUNoteGPorStartNew().

◆ s_CurrentGP

Uint1 s_CurrentGP = 0
static

◆ s_FinishedGP

Uint1 s_FinishedGP = 0
static

Definition at line 64 of file rcu.cpp.

Referenced by RCUPassQS(), and s_RCUNoteStartedGP().

◆ s_RCULock

CMiniMutex s_RCULock
static

Definition at line 63 of file rcu.cpp.

Referenced by RCUFinalizeThread(), RCUInitNewThread(), and s_RCUNoteGPorStartNew().

◆ s_ThreadsEnteredGP

TSrvThreadNum s_ThreadsEnteredGP = 0
static

Definition at line 67 of file rcu.cpp.

Referenced by s_RCUNoteGPorStartNew(), and s_RCUNoteStartedGP().

◆ s_ThreadsPassedQS

TSrvThreadNum s_ThreadsPassedQS = 0
static

Definition at line 66 of file rcu.cpp.

Referenced by s_RCUNoteGPorStartNew(), and s_RCUNoteStartedGP().

Modified on Sat Feb 24 07:46:34 2024 by modify_doxy.py rev. 669887