Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

XrdScheduler Class Reference

#include <XrdScheduler.hh>

Inheritance diagram for XrdScheduler:

Inheritance graph
[legend]
Collaboration diagram for XrdScheduler:

Collaboration graph
[legend]
List of all members.

Public Member Functions

int Active ()
void Cancel (XrdJob *jp)
int canStick ()
void DoIt ()
pid_t Fork (const char *id)
void * Reaper ()
void Run ()
void Schedule (XrdJob *jp)
void Schedule (int num, XrdJob *jfirst, XrdJob *jlast)
void Schedule (XrdJob *jp, time_t atime)
void setParms (int minw, int maxw, int avlt, int maxi, int once=0)
void Start ()
int Stats (char *buff, int blen, int do_sync=0)
void TimeSched ()
 XrdScheduler (int minw=8, int maxw=2048, int maxi=780)
 ~XrdScheduler ()

Public Attributes

int num_TCreate
int num_TDestroy
int num_Jobs
int max_QLength
int num_Limited

Private Member Functions

void hireWorker (int dotrace=1)
void Monitor ()
void traceExit (pid_t pid, int status)

Private Attributes

XrdSysMutex DispatchMutex
int idl_Workers
int min_Workers
int max_Workers
int max_Workidl
int num_Workers
int stk_Workers
int num_JobsinQ
int num_Layoffs
XrdJobWorkFirst
XrdJobWorkLast
XrdSysSemaphore WorkAvail
XrdSysMutex SchedMutex
XrdJobTimerQueue
XrdSysCondVar TimerRings
XrdSysMutex TimerMutex
XrdSchedulerPIDfirstPID
XrdSysMutex ReaperMutex

Static Private Attributes

const char * TraceID = "Sched"

Constructor & Destructor Documentation

XrdScheduler::XrdScheduler int  minw = 8,
int  maxw = 2048,
int  maxi = 780
 

XrdScheduler::~XrdScheduler  ) 
 


Member Function Documentation

int XrdScheduler::Active  )  [inline]
 

void XrdScheduler::Cancel XrdJob jp  ) 
 

int XrdScheduler::canStick  )  [inline]
 

void XrdScheduler::DoIt  )  [virtual]
 

Implements XrdJob.

pid_t XrdScheduler::Fork const char *  id  ) 
 

void XrdScheduler::hireWorker int  dotrace = 1  )  [private]
 

void XrdScheduler::Monitor  )  [private]
 

void * XrdScheduler::Reaper  ) 
 

void XrdScheduler::Run  ) 
 

void XrdScheduler::Schedule XrdJob jp,
time_t  atime
 

void XrdScheduler::Schedule int  num,
XrdJob jfirst,
XrdJob jlast
 

void XrdScheduler::Schedule XrdJob jp  ) 
 

void XrdScheduler::setParms int  minw,
int  maxw,
int  avlt,
int  maxi,
int  once = 0
 

void XrdScheduler::Start  ) 
 

int XrdScheduler::Stats char *  buff,
int  blen,
int  do_sync = 0
 

void XrdScheduler::TimeSched  ) 
 

void XrdScheduler::traceExit pid_t  pid,
int  status
[private]
 


Member Data Documentation

XrdSysMutex XrdScheduler::DispatchMutex [private]
 

XrdSchedulerPID* XrdScheduler::firstPID [private]
 

int XrdScheduler::idl_Workers [private]
 

int XrdScheduler::max_QLength
 

int XrdScheduler::max_Workers [private]
 

int XrdScheduler::max_Workidl [private]
 

int XrdScheduler::min_Workers [private]
 

int XrdScheduler::num_Jobs
 

int XrdScheduler::num_JobsinQ [private]
 

int XrdScheduler::num_Layoffs [private]
 

int XrdScheduler::num_Limited
 

int XrdScheduler::num_TCreate
 

int XrdScheduler::num_TDestroy
 

int XrdScheduler::num_Workers [private]
 

XrdSysMutex XrdScheduler::ReaperMutex [private]
 

XrdSysMutex XrdScheduler::SchedMutex [private]
 

int XrdScheduler::stk_Workers [private]
 

XrdSysMutex XrdScheduler::TimerMutex [private]
 

XrdJob* XrdScheduler::TimerQueue [private]
 

XrdSysCondVar XrdScheduler::TimerRings [private]
 

const char * XrdScheduler::TraceID = "Sched" [static, private]
 

XrdSysSemaphore XrdScheduler::WorkAvail [private]
 

XrdJob* XrdScheduler::WorkFirst [private]
 

XrdJob* XrdScheduler::WorkLast [private]
 


The documentation for this class was generated from the following files:
Generated on Sun Nov 6 13:42:28 2011 for xrootd by  doxygen 1.3.9.1