第4章 同步并发操作
本章主要内容
- 等待事件
- 带有期望的等待一次性事件
- 在限定时间内等待
- 使用同步操作简化代码
在上一章中,我们看到各种在线程间保护共享数据的方法。当你不仅想要保护数据,还想对单独的线程进行同步。例如,在第一个线程完成前,可能需要等待另一个线程执行完成。通常情况下,线程会等待一个特定事件的发生,或者等待某一条件达成(为true)。这可能需要定期检查“任务完成”标识,或将类似的东西放到共享数据中,但这与理想情况还是差很多。像这种情况就需要在线程中进行同步,C++
标准库提供了一些工具可用于同步操作,形式上表现为条件变量(condition variables)和期望(futures)。
在本章,将讨论如何使用条件变量等待事件,以及介绍期望,和如何使用它简化同步操作。
当前内容版权归 xiaoweiChen 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 xiaoweiChen .