round hibernation delays greater than zero but less than 1mS to 1 mS
This commit is contained in:
@@ -483,14 +483,17 @@ epicsShareFunc void epicsShareAPI epicsThreadSleep ( double seconds )
|
||||
static const double mSecPerSec = 1000;
|
||||
DWORD milliSecDelay;
|
||||
|
||||
if ( seconds >= INFINITE / mSecPerSec ) {
|
||||
milliSecDelay = INFINITE - 1;
|
||||
}
|
||||
else if ( seconds < 0.0 ) {
|
||||
if ( seconds <= 0.0 ) {
|
||||
milliSecDelay = 0u;
|
||||
}
|
||||
else if ( seconds >= INFINITE / mSecPerSec ) {
|
||||
milliSecDelay = INFINITE - 1;
|
||||
}
|
||||
else {
|
||||
milliSecDelay = ( DWORD ) ( ( seconds * mSecPerSec ) + 0.5 );
|
||||
if ( milliSecDelay == 0 ) {
|
||||
milliSecDelay = 1;
|
||||
}
|
||||
}
|
||||
Sleep ( milliSecDelay );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user