notify_one,futex笔记

【主要注意点】

1)pthread_cond_signal在多处理器上可能同时唤醒多个线程

2)notify丢失问题,处理完任务后要检查队列

https://blog.51cto.com/u_15310381/3228038

【笔记】

1)std::condition_variable是使用的pthread_cond_t 

2)notify_one和notify_all区别在于, futex_wake系统调用唤醒一个还是所有

3)notify_all调用栈

4) futex_wake (cond->__data.__g_signals + g1, INT_MAX, private);

 

 5)notify_one调用栈

 

6)wait调用栈

posted @ 2022-05-25 00:05  stupidstan2019  阅读(97)  评论(2编辑  收藏  举报