|
XRootD
|
#include <XrdScheduler.hh>
Inheritance diagram for XrdScheduler:
Collaboration diagram for XrdScheduler:Public Member Functions | |
| XrdScheduler (int minw=3, int maxw=128, int maxi=12) | |
| XrdScheduler (XrdSysError *eP, XrdOucTrace *tP, int minw=8, int maxw=8192, int maxi=780) | |
| XrdScheduler (XrdSysError *eP, XrdSysTrace *tP, int minw=8, int maxw=8192, int maxi=780) | |
| ~XrdScheduler () | |
| int | Active () |
| void | Cancel (XrdJob *jp) |
| int | canStick () |
| void | DoIt () |
| pid_t | Fork (const char *id) |
| void * | Reaper () |
| void | Run () |
| void | Schedule (int num, XrdJob *jfirst, XrdJob *jlast) |
| void | Schedule (XrdJob *jp) |
| void | Schedule (XrdJob *jp, time_t atime) |
| void | setNproc (const bool limlower) |
| 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 () |
Public Member Functions inherited from XrdJob | |
| XrdJob (const char *desc="") | |
| virtual | ~XrdJob () |
Public Attributes | |
| int | max_QLength |
| int | num_Jobs |
| int | num_Limited |
| int | num_TCreate |
| int | num_TDestroy |
Public Attributes inherited from XrdJob | |
| const char * | Comment |
| XrdJob * | NextJob |
Definition at line 45 of file XrdScheduler.hh.
| XrdScheduler::XrdScheduler | ( | XrdSysError * | eP, |
| XrdSysTrace * | tP, | ||
| int | minw = 8, |
||
| int | maxw = 8192, |
||
| int | maxi = 780 |
||
| ) |
Definition at line 97 of file XrdScheduler.cc.
| XrdScheduler::XrdScheduler | ( | XrdSysError * | eP, |
| XrdOucTrace * | tP, | ||
| int | minw = 8, |
||
| int | maxw = 8192, |
||
| int | maxi = 780 |
||
| ) |
Definition at line 108 of file XrdScheduler.cc.
References XrdSysError::logger().
Here is the call graph for this function:| XrdScheduler::XrdScheduler | ( | int | minw = 3, |
| int | maxw = 128, |
||
| int | maxi = 12 |
||
| ) |
Definition at line 123 of file XrdScheduler.cc.
References fcntl(), Logger, TRACE_SCHED, and XrdSysTrace::What.
Here is the call graph for this function:| XrdScheduler::~XrdScheduler | ( | ) |
Definition at line 177 of file XrdScheduler.cc.
|
inline |
Definition at line 49 of file XrdScheduler.hh.
Referenced by XrdStats::Report().
Here is the caller graph for this function:| void XrdScheduler::Cancel | ( | XrdJob * | jp | ) |
Definition at line 185 of file XrdScheduler.cc.
References XrdJob::Comment, XrdSysMutex::Lock(), XrdJob::NextJob, TRACE, and XrdSysMutex::UnLock().
Referenced by XrdXrootdJob::~XrdXrootdJob(), XrdXrootdTransit::Recycle(), Schedule(), and setParms().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 53 of file XrdScheduler.hh.
Referenced by XrdLinkXeq::DoIt().
Here is the caller graph for this function:
|
virtual |
Implements XrdJob.
Definition at line 215 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), XrdSysSemaphore::Post(), Schedule(), TRACE, and XrdSysMutex::UnLock().
Here is the call graph for this function:| pid_t XrdScheduler::Fork | ( | const char * | id | ) |
Definition at line 245 of file XrdScheduler.cc.
References XrdSysError::Emsg(), XrdSysMutex::Lock(), XrdSysThread::Run(), XrdSysMutex::UnLock(), and XrdStartReaper().
Here is the call graph for this function:| void * XrdScheduler::Reaper | ( | ) |
Definition at line 283 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), XrdSchedulerPID::next, XrdSchedulerPID::pid, TRACE_SCHED, TRACING, ts(), and XrdSysMutex::UnLock().
Referenced by XrdStartReaper().
Here is the call graph for this function:
Here is the caller graph for this function:| void XrdScheduler::Run | ( | ) |
Definition at line 329 of file XrdScheduler.cc.
References XrdJob::Comment, XrdJob::DoIt(), XrdSysError::Emsg(), XrdSysMutex::Lock(), XrdJob::NextJob, num_TDestroy, TRACE, TRACE_SCHED, TRACING, XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and XrdLog.
Referenced by XrdStartWorking().
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 404 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), max_QLength, XrdJob::NextJob, num_Jobs, XrdSysSemaphore::Post(), and XrdSysMutex::UnLock().
Here is the call graph for this function:| void XrdScheduler::Schedule | ( | XrdJob * | jp | ) |
Definition at line 373 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), max_QLength, XrdJob::NextJob, num_Jobs, XrdSysSemaphore::Post(), and XrdSysMutex::UnLock().
Referenced by XrdCmsDelNode::XrdCmsDelNode(), XrdCmsDrop::XrdCmsDrop(), XrdCmsDrop::XrdCmsDrop(), XrdStatsJob::XrdStatsJob(), XrdXrootdJob::XrdXrootdJob(), XrdXrootdPrepare::XrdXrootdPrepare(), XrdSsiFileReq::Activate(), XrdSsiEvent::AddEvent(), XrdXrootdAioTask::Completed(), XrdCmsConfig::Configure2(), XrdPfc::IO::Detach(), XrdPollE::Disable(), XrdPollPoll::Disable(), XrdCmsNode::do_SelPrep(), XrdObjectQ< T >::DoIt(), DoIt(), XrdStatsJob::DoIt(), XrdCmsBlackList::DoIt(), XrdCms::PingClock::DoIt(), XrdCmsJob::DoIt(), XrdCmsPrepare::DoIt(), XrdXrootdJob::DoIt(), XrdXrootdMonFile::DoIt(), XrdXrootdMonitor_Ident::DoIt(), XrdXrootdMonitor_Tick::DoIt(), XrdXrootdPrepare::DoIt(), XrdXrootdCallBack::Done(), XrdPosixFileRH::HandleResponse(), XrdXrootdMonFile::Init(), XrdXrootdMonitor::Init(), XrdCmsBlackList::Init(), mainAccept(), mainAdmin(), XrdPfc::ResourceMonitor::perform_purge_check(), XrdPfc::Cache::Prepare(), XrdCmsPrepare::Reset(), XrdSsiUtils::RetErr(), XrdPosixFileRH::Sched(), XrdOfsPrepGPIReal::PrepGRun::Sched(), XrdSsiTaskReal::SchedError(), XrdOssCsiFileAio::SchedReadJob(), XrdOssCsiFileAio::SchedReadJob2(), XrdXrootdJob::Schedule(), XrdXrootdAioFob::Schedule(), XrdXrootdAioFob::Schedule(), XrdOssCsiFileAio::SchedWriteJob(), XrdOssCsiFileAio::SchedWriteJob2(), XrdObjectQ< T >::Set(), setParms(), XrdLinkCtl::Setup(), Start(), XrdPollE::Start(), XrdPollPoll::Start(), XrdSendQ::Terminate(), XrdCmsCache::TickTock(), TimeSched(), and XrdSsiSessReal::UnHold().
Here is the call graph for this function:
Here is the caller graph for this function:| void XrdScheduler::Schedule | ( | XrdJob * | jp, |
| time_t | atime | ||
| ) |
Definition at line 439 of file XrdScheduler.cc.
References Cancel(), XrdJob::Comment, XrdSysMutex::Lock(), XrdJob::NextJob, XrdSysCondVar::Signal(), TRACE, TRACE_SCHED, TRACING, and XrdSysMutex::UnLock().
Here is the call graph for this function:| void XrdScheduler::setNproc | ( | const bool | limlower | ) |
Definition at line 474 of file XrdScheduler.cc.
References close, MAX_SCHED_PROCS, open, and read.
Referenced by XrdConfig::XrdConfig().
Here is the caller graph for this function:| void XrdScheduler::setParms | ( | int | minw, |
| int | maxw, | ||
| int | avlt, | ||
| int | maxi, | ||
| int | once = 0 |
||
| ) |
Definition at line 543 of file XrdScheduler.cc.
References Cancel(), XrdSysMutex::Lock(), Schedule(), TRACE, and XrdSysMutex::UnLock().
Here is the call graph for this function:| void XrdScheduler::Start | ( | ) |
Definition at line 589 of file XrdScheduler.cc.
References XrdSysError::Emsg(), XrdSysThread::Run(), Schedule(), TRACE, TRACE_SCHED, XrdOucTrace::What, XrdSysTrace::What, XrdLog, XrdStartTSched(), and XRDSYSTHREAD_BIND.
Referenced by XrdOssCsi::Init(), and XrdOucGetCache().
Here is the call graph for this function:
Here is the caller graph for this function:| int XrdScheduler::Stats | ( | char * | buff, |
| int | blen, | ||
| int | do_sync = 0 |
||
| ) |
Definition at line 623 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), max_QLength, num_Jobs, num_Limited, num_TCreate, num_TDestroy, and XrdSysMutex::UnLock().
Here is the call graph for this function:| void XrdScheduler::TimeSched | ( | ) |
Definition at line 666 of file XrdScheduler.cc.
References XrdSysMutex::Lock(), XrdJob::NextJob, Schedule(), XrdSysMutex::UnLock(), and XrdSysCondVar::Wait().
Referenced by XrdStartTSched().
Here is the call graph for this function:
Here is the caller graph for this function:| int XrdScheduler::max_QLength |
Definition at line 83 of file XrdScheduler.hh.
Referenced by Schedule(), Schedule(), and Stats().
| int XrdScheduler::num_Jobs |
Definition at line 82 of file XrdScheduler.hh.
Referenced by Schedule(), Schedule(), and Stats().
| int XrdScheduler::num_Limited |
Definition at line 84 of file XrdScheduler.hh.
Referenced by Stats().
| int XrdScheduler::num_TCreate |
Definition at line 80 of file XrdScheduler.hh.
Referenced by Stats().
| int XrdScheduler::num_TDestroy |
Definition at line 81 of file XrdScheduler.hh.