所以就在最近,我依赖于 pthread_mutex_timedlock 的异步服务器代码似乎过早地超时了。起初我以为这只是我的错误,但看到 linux 内核存在一些闰秒问题,似乎我不是唯一一个:https ://lkml.org/lkml/2012/7/1 /11
目前对此的修复是什么?重启服务器,还是更新内核?我的服务器依赖于 timedlock 机制来等待来自其他线程的事件,并且由于这个过早的超时,CPU 使用率一直处于 100%,因为它永远不会停留在 timed lock 上。
我目前正在运行 ubuntu 服务器 10.04.4,内核版本为 2.6.39.1