#include "timerPrivate.h"
Definition at line 34 of file timerPrivate.h.
Definition at line 135 of file timer.cpp.
137 bool reschedual =
false;
138 bool wakeupCancelBlockingThreads =
false;
142 if ( this->curState == statePending ) {
144 this->curState = stateLimbo;
150 else if ( this->curState == stateActive ) {
151 this->
queue.cancelPending =
true;
152 this->curState = timer::stateLimbo;
156 while ( this->
queue.cancelPending &&
157 this->queue.pExpireTmr ==
this ) {
159 this->
queue.cancelBlockingEvent.wait ();
162 wakeupCancelBlockingThreads =
true;
167 this->
queue.notify.reschedule ();
169 if ( wakeupCancelBlockingThreads ) {
170 this->
queue.cancelBlockingEvent.signal ();
LIBCOM_API epicsThreadId epicsStdCall epicsThreadGetIdSelf(void)
Definition at line 47 of file timer.cpp.
51 queueTmp.timerFreeList.
release (
this );
epicsPlacementDeleteOperator((void *, tsFreeList< timer, 0x20 > &)) protecte ~timer)()
epicsTimer::expireInfo timer::getExpireInfo |
( |
| ) |
const |
Definition at line 174 of file timer.cpp.
180 if ( this->curState == statePending || this->curState == stateActive ) {
181 return expireInfo (
true, this->exp );
183 return expireInfo (
false, epicsTime() );
void * timer::operator new |
( |
size_t |
size, |
|
|
tsFreeList< timer, 0x20 > & |
freeList |
|
) |
| |
|
inline |
void timer::show |
( |
unsigned int |
level | ) |
const |
Definition at line 186 of file timer.cpp.
190 if ( this->curState == statePending || this->curState == stateActive ) {
192 delay = this->exp - epicsTime::getCurrent();
201 const char *pStateName;
202 if ( this->curState == statePending ) {
203 pStateName =
"pending";
205 else if ( this->curState == stateActive ) {
206 pStateName =
"active";
208 else if ( this->curState == stateLimbo ) {
209 pStateName =
"limbo";
212 pStateName =
"corrupt";
214 printf (
"timer, state = %s, delay = %f\n",
216 if ( level >= 1u && this->pNotify ) {
217 this->pNotify->show ( level - 1u );
void timer::start |
( |
class epicsTimerNotify & |
notify, |
|
|
const epicsTime & |
expire |
|
) |
| |
Definition at line 59 of file timer.cpp.
62 this->privateStart ( notify, expire );
void timer::start |
( |
class epicsTimerNotify & |
notify, |
|
|
double |
delaySeconds |
|
) |
| |
Definition at line 54 of file timer.cpp.
56 this->
start ( notify, epicsTime::getCurrent () + delaySeconds );
void start(class epicsTimerNotify &, const epicsTime &)
The documentation for this class was generated from the following files: