diff --git a/src/ca/cac.cpp b/src/ca/cac.cpp index 86ffcb38d..05d74a6c0 100644 --- a/src/ca/cac.cpp +++ b/src/ca/cac.cpp @@ -601,12 +601,10 @@ int cac::pendEvent ( const double &timeout ) else if ( timeout >= CAC_SIGNIFICANT_DELAY ) { epicsThreadSleep ( timeout ); } - else { + while ( this->recvProcessPending ) { // give up the processor while // there is recv processing to be done - while ( this->recvProcessPending ) { - epicsThreadSleep ( CAC_SIGNIFICANT_DELAY ); - } + epicsThreadSleep ( 0.1 ); } }