pthread_cond_wait中的while()不仅仅在等待条件变量前检查条件cond_is_false是否成立,实际上在等待条件变量后也检查条件cond_is_false是否成立。在多线程等待的情况下,这样对condition进行多做一次判断,即可避免“虚假唤醒”。

pthread_mutex_lock(&mutex);

while(cond_is_false)

  pthread_cond_wait(&cond, &mutex);

pthread_mutex_unlock(&mutex);

相关文章:

  • 2021-04-10
  • 2022-12-23
  • 2022-01-19
  • 2021-07-08
  • 2021-09-25
  • 2022-01-08
  • 2023-03-18
猜你喜欢
  • 2021-07-17
  • 2022-12-23
  • 2021-11-05
  • 2022-12-23
  • 2021-09-03
  • 2022-01-12
  • 2022-12-23
相关资源
相似解决方案