proper rounding improves delay accuracy

This commit is contained in:
Jeff Hill
2001-02-15 21:10:21 +00:00
parent 94fa715e96
commit 83cb77131d
2 changed files with 2 additions and 2 deletions

View File

@@ -142,7 +142,7 @@ epicsShareFunc epicsEventWaitStatus epicsShareAPI epicsEventWaitWithTimeout (
tmo = 0u;
}
else {
tmo = ( DWORD ) ( timeOut * mSecPerSecOsdSem );
tmo = ( DWORD ) ( ( timeOut * mSecPerSecOsdSem ) + 0.5 );
}
status = WaitForSingleObject ( pSem->handle, tmo );
if ( status == WAIT_OBJECT_0 ) {

View File

@@ -481,7 +481,7 @@ epicsShareFunc int epicsShareAPI epicsThreadIsSuspended (epicsThreadId id)
epicsShareFunc void epicsShareAPI epicsThreadSleep (double seconds)
{
static const double mSecPerSec = 1000;
DWORD milliSecDelay = (DWORD) (seconds * mSecPerSec);
DWORD milliSecDelay = (DWORD) ( (seconds * mSecPerSec) + 0.5 );
Sleep (milliSecDelay);
}