Fabcoin Core
0.16.2
P2P Digital Currency
|
#include <scheduler.h>
Public Types | |
typedef std::function< void(void)> | Function |
Public Member Functions | |
CScheduler () | |
~CScheduler () | |
void | schedule (Function f, boost::chrono::system_clock::time_point t=boost::chrono::system_clock::now()) |
void | scheduleFromNow (Function f, int64_t deltaMilliSeconds) |
void | scheduleEvery (Function f, int64_t deltaMilliSeconds) |
void | serviceQueue () |
void | stop (bool drain=false) |
size_t | getQueueInfo (boost::chrono::system_clock::time_point &first, boost::chrono::system_clock::time_point &last) const |
bool | AreThreadsServicingQueue () const |
Private Member Functions | |
bool | shouldStop () |
Private Attributes | |
std::multimap< boost::chrono::system_clock::time_point, Function > | taskQueue |
boost::condition_variable | newTaskScheduled |
boost::mutex | newTaskMutex |
int | nThreadsServicingQueue |
bool | stopRequested |
bool | stopWhenEmpty |
Definition at line 37 of file scheduler.h.
typedef std::function<void(void)> CScheduler::Function |
Definition at line 43 of file scheduler.h.
CScheduler::CScheduler | ( | ) |
Definition at line 14 of file scheduler.cpp.
CScheduler::~CScheduler | ( | ) |
bool CScheduler::AreThreadsServicingQueue | ( | ) | const |
Definition at line 143 of file scheduler.cpp.
size_t CScheduler::getQueueInfo | ( | boost::chrono::system_clock::time_point & | first, |
boost::chrono::system_clock::time_point & | last | ||
) | const |
Definition at line 131 of file scheduler.cpp.
void CScheduler::schedule | ( | CScheduler::Function | f, |
boost::chrono::system_clock::time_point | t = boost::chrono::system_clock::now() |
||
) |
void CScheduler::scheduleEvery | ( | CScheduler::Function | f, |
int64_t | deltaMilliSeconds | ||
) |
Definition at line 126 of file scheduler.cpp.
void CScheduler::scheduleFromNow | ( | CScheduler::Function | f, |
int64_t | deltaMilliSeconds | ||
) |
Definition at line 115 of file scheduler.cpp.
void CScheduler::serviceQueue | ( | ) |
Definition at line 33 of file scheduler.cpp.
|
inlineprivate |
void CScheduler::stop | ( | bool | drain = false | ) |
Definition at line 94 of file scheduler.cpp.
|
mutableprivate |
Definition at line 80 of file scheduler.h.
|
private |
Definition at line 79 of file scheduler.h.
|
private |
Definition at line 81 of file scheduler.h.
|
private |
Definition at line 82 of file scheduler.h.
|
private |
Definition at line 83 of file scheduler.h.
|
private |
Definition at line 78 of file scheduler.h.