发布时间:2012-12-26 09:51:26
引子在编译2.6内核的时候,你会在编译选项中看到[*] Enable futex support这一项,上网查,有的资料会告诉你"不选这个内核不一定能正确的运行使用glibc的程序",那futex是什么?和glibc又有什么关系呢?1. 什么是FutexFutex 是Fast Userspace muTexes的缩写,由Hubertus Franke, Matthew Kirkwood, Ingo Molnar and Rusty Russell共同设计完成。几位都是linux领域的专家,其中可能Ingo Molnar大家更熟悉一些,毕竟是O(1)调度器和CFS的实现者。Futex按英文翻译过......【阅读全文】
发布时间:2012-12-25 13:42:55
最近在温习pthread的时候,忽然发现以前对pthread_cond_wait的了解太肤浅了。昨晚在看《Programming With POSIX Threads》的时候,看到了pthread_cond_wait的通常使用方法: pthread_mutex_lock();while(condition_is_false) pthread_cond_wait();pthread_mutex_unlock();为什么在pthread_cond_wait()前要加一个while循环来判断条件是否为假呢?APUE中写道:传递给pthread_cond_......【阅读全文】