天天看点

C++20 中 atomic_wait、binary_semaphore、latch、barrier 的一个示例实现

C++20 中的原子操作库增加了std::atomic_wait,阻塞线程直至被提醒且原子值更改。

github上面发现一个 C++20 中 binary_semaphore、latch、barrier 的一个示例实现

https://github.com/ogiroux/atomic_wait

这个实现是在c++17的基础上完成的。

结合cppreference上面的: atomic1 、atomic_wait2、 semaphore3 、latch4、barrier5 研究比较便于理解。

C++20 中 atomic_wait、binary_semaphore、latch、barrier 的一个示例实现

vs2019 的工程收集在: https://github.com/5455945/cpp_demo/tree/master/C%2B%2B20/atomic_wait 中。

C++20 中 atomic_wait、binary_semaphore、latch、barrier 的一个示例实现
  1. atomic ↩︎
  2. atomic_wait ↩︎
  3. semaphore ↩︎
  4. latch ↩︎
  5. barrier ↩︎

继续阅读