#51·libco

epoll_wait 返回的时间不是固定的 1ms,有几率出现 1-4 秒的情况?

作者: H2Z22017创建于 2017年9月7日更新于 2023年9月6日

在某个携程中,使用了 poll(NULL, 0, msleep()); 来进行定时,结果发现定时不准确。在 msleep=10000 的情况下,有时会出现 12 秒的延迟执行。最后定位到 co_epoll_wait,似乎不是固定阻塞 1 毫秒,有时会阻塞 1-4 秒。整个测试代码只有一个协程,内容仅仅是在屏幕上打印时间,不会出现执行忙的情况。