标准库头文件 <latch>

< cpp‎ | header
 
 
 

此头文件是线程支持库的一部分。

(C++20)
单次使用的线程屏障
(类)

概要

namespace std {
  class latch;
}

std::latch

namespace std {
  class latch {
  public:
    static constexpr ptrdiff_t max() noexcept;
 
    constexpr explicit latch(ptrdiff_t expected);
    ~latch();
 
    latch(const latch&) = delete;
    latch& operator=(const latch&) = delete;
 
    void count_down(ptrdiff_t update = 1);
    bool try_wait() const noexcept;
    void wait() const;
    void arrive_and_wait(ptrdiff_t update = 1);
 
  private:
    ptrdiff_t counter;  // 仅用于阐释
  };
}