diff --git a/src/libCom/test/epicsEventTest.cpp b/src/libCom/test/epicsEventTest.cpp index f500133b1..e314a4e76 100644 --- a/src/libCom/test/epicsEventTest.cpp +++ b/src/libCom/test/epicsEventTest.cpp @@ -113,17 +113,24 @@ static void producer(void *arg) } // extern "C" +static void eventWaitMeasureDelay( const epicsEventId &id, const double & delay ) +{ + epicsTime beg = epicsTime::getCurrent(); + epicsEventWaitWithTimeout ( id, delay ); + epicsTime end = epicsTime::getCurrent(); + printf ( "epicsEventWaitWithTimeout ( %10f ) timed out after %10f sec\n", + delay, end - beg ); +} + static void eventWaitTest() { epicsEventId event = epicsEventMustCreate ( epicsEventEmpty ); for ( int i = 0u; i < 20; i++ ) { - epicsTime beg = epicsTime::getCurrent(); double delay = ldexp ( 1.0 , -i ); - epicsEventWaitWithTimeout ( event, delay ); - epicsTime end = epicsTime::getCurrent(); - printf ( "epicsEventWaitWithTimeout ( %g ) timed out after %g sec\n", - delay, end - beg ); + eventWaitMeasureDelay ( event, delay ); } + eventWaitMeasureDelay ( event, 0.0 ); + epicsEventDestroy ( event ); } diff --git a/src/libCom/test/epicsThreadTest.cpp b/src/libCom/test/epicsThreadTest.cpp index 7b4283a07..2ca25f4ed 100644 --- a/src/libCom/test/epicsThreadTest.cpp +++ b/src/libCom/test/epicsThreadTest.cpp @@ -55,16 +55,22 @@ void myThread::run() errlogPrintf("threadFunc %d stopping argvalue %p\n",myPrivate,argvalue); } +static void threadSleepMeasureDelay( const double & delay ) +{ + epicsTime beg = epicsTime::getCurrent(); + epicsThreadSleep ( delay ); + epicsTime end = epicsTime::getCurrent(); + printf ( "epicsThreadSleep ( %10f ) finished after %10f sec\n", + delay, end - beg ); +} + static void threadSleepTest() { for ( int i = 0u; i < 20; i++ ) { - epicsTime beg = epicsTime::getCurrent(); double delay = ldexp ( 1.0 , -i ); - epicsThreadSleep ( delay ); - epicsTime end = epicsTime::getCurrent(); - printf ( "epicsThreadSleep ( %g ) finished after %g sec\n", - delay, end - beg ); + threadSleepMeasureDelay ( delay ); } + threadSleepMeasureDelay ( 0.0 ); } extern "C" void threadTest(int ntasks,int verbose)