假设,如果我们可以选择在wait_until
和select(timveval)
之间进行制作,那么哪一个更好?是否有人比其他人具有性能优势,还是实现定义?
为什么会这个问题?
试图解决这个问题:Android: C++ thread not waking up if screen-locked or in background. Works fine when app is in use
总结一下,当Android设备被锁定时,包含std::condition_variable::wait_until
的线程不会被唤醒。发生这种情况可能是由于CPU进入睡眠状态。如果我将其替换为socket
> select
> timeval (wait)
,正如select man page中提到的那样,情况好一点,线程“有时”醒来。截至目前,他们都没有解决问题。