fix condition_variable wait
Some checks failed
rpcrypto-build / build (Debug, himix200.toolchain.cmake) (push) Successful in 1m14s
rpcrypto-build / build (Release, hisiv510.toolchain.cmake) (push) Successful in 1m12s
rpcrypto-build / build (Release, himix200.toolchain.cmake) (push) Successful in 1m15s
linux-hisiv500-gcc / linux-gcc-hisiv500 (push) Successful in 1m24s
rpcrypto-build / build (Debug, hisiv510.toolchain.cmake) (push) Successful in 1m33s
linux-x64-gcc / linux-gcc (push) Has been cancelled
linux-mips64-gcc / linux-gcc-mips64el (push) Has been cancelled
Some checks failed
rpcrypto-build / build (Debug, himix200.toolchain.cmake) (push) Successful in 1m14s
rpcrypto-build / build (Release, hisiv510.toolchain.cmake) (push) Successful in 1m12s
rpcrypto-build / build (Release, himix200.toolchain.cmake) (push) Successful in 1m15s
linux-hisiv500-gcc / linux-gcc-hisiv500 (push) Successful in 1m24s
rpcrypto-build / build (Debug, hisiv510.toolchain.cmake) (push) Successful in 1m33s
linux-x64-gcc / linux-gcc (push) Has been cancelled
linux-mips64-gcc / linux-gcc-mips64el (push) Has been cancelled
This commit is contained in:
parent
64780c4bb1
commit
ae88a7e4fb
@ -36,8 +36,8 @@ public:
|
||||
bool WaitForMilliseconds(MutexImpl &mutex_impl, uint32_t wait_time)
|
||||
{
|
||||
struct timespec ts;
|
||||
ts.tv_sec = 0;
|
||||
ts.tv_nsec = wait_time * 1000000;
|
||||
ts.tv_sec = wait_time / 1000;
|
||||
ts.tv_nsec = (wait_time % 1000) * 1000000;
|
||||
return ETIMEDOUT != pthread_cond_timedwait(&cond_, &mutex_impl.mutex_, &ts);
|
||||
}
|
||||
|
||||
@ -52,7 +52,7 @@ private:
|
||||
pthread_cond_t cond_;
|
||||
};
|
||||
|
||||
} // namespace detail
|
||||
}// namespace detail
|
||||
}// namespace ulib
|
||||
|
||||
#endif//ULIB_SRC_ULIB_CONCORRENCY_INTERNAL_CONDITION_VARIABLE_IMPL_H_
|
||||
|
@ -130,7 +130,7 @@ TimerManager::Loop()
|
||||
uint64_t wait_time_ms = (timers_.begin()->first - now + 1000) / 1000;
|
||||
|
||||
// FIX:
|
||||
if (wait_time_ms == 0) { wait_time_ms = 1; }
|
||||
if (wait_time_ms < 100) { wait_time_ms = 100; }
|
||||
|
||||
timers_cond_.WaitForMilliseconds(timers_guard, wait_time_ms);
|
||||
now = TimeNowInMicroSeconds();
|
||||
|
Loading…
Reference in New Issue
Block a user