Changeset 1478:b13765449d68


Ignore:
Timestamp:
08/29/10 04:38:07 (18 months ago)
Author:
niam
Branch:
default
Message:

[pc::execution::(workqueue|scheduler) more accurete timeouts

Location:
sources/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • sources/src/pcExecutionScheduler.cc

    r1474 r1478  
    176176                ts.tv_sec += idle/1000; 
    177177                ts.tv_nsec += (idle % 1000) * 1000000; 
     178                if (ts.tv_nsec > 999999999) { 
     179                    ts.tv_sec += 1; 
     180                    ts.tv_nsec -= 999999999; 
     181                } 
    178182 
    179183                pthread_cond_timedwait(&parent->handle->condition, &parent->handle->mutex, &ts); 
  • sources/src/pcExecutionWorkqueue.cc

    r1468 r1478  
    9696                    clock_gettime(CLOCK_REALTIME, &now); 
    9797                    now.tv_sec += timeout->tv_sec; 
     98                    now.tv_nsec += timeout->tv_nsec; 
     99                    if (now.tv_nsec > 999999999) { 
     100                        now.tv_sec += 1; 
     101                        now.tv_nsec -= 999999999; 
     102                    } 
    98103 
    99104                    pthread_mutex_lock(&mutex); 
Note: See TracChangeset for help on using the changeset viewer.