何时使用pthread条件变量?

何时使用pthread条件变量?,第1张

何时使用pthread条件变量

条件变量应该用作等待和通知的地方。它们不是条件本身,也不是事件。条件包含在周围的编程逻辑中。条件变量的典型用法是

// safely examine the condition, prevent other threads from// altering itpthread_mutex_lock (&lock);while ( SOME-ConDITION is false)    pthread_cond_wait (&cond, &lock);// Do whatever you need to do when condition becomes truedo_stuff();pthread_mutex_unlock (&lock);

另一方面,发出信号通知条件变量的线程通常看起来像

// ensure we have exclusive access to whathever comprises the conditionpthread_mutex_lock (&lock);ALTER-CONDITION// Wakeup at least one of the threads that are waiting on the condition (if any)pthread_cond_signal (&cond);// allow others to proceedpthread_mutex_unlock (&lock)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5038608.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存