table of contents
        
      
      
    | std::experimental::barrier(3) | C++ Standard Libary | std::experimental::barrier(3) | 
NAME¶
std::experimental::barrier - std::experimental::barrier
Synopsis¶
 Defined in header <experimental/barrier>
  
   class barrier; (concurrency TS)
  
   The class std::experimental::barrier provides a thread-coordination mechanism
    that
  
   allows a set of participating threads to block until an operation is
    completed.
  
   Unlike std::experimental::latch, barriers are reusable; once the
    participating
  
   threads are released from a barrier's synchronization point, they can reuse
    the same
  
   barrier.
  
   A barrier has a completion phase, which is executed by one of the
    participating
  
   threads once all threads in the set of participating threads arrive at the
  
   synchronization point. The arrive_and_wait and arrive_and_drop calls
    synchronize
  
   with the start of the completion phase; the end of the completion phase
    synchronizes
  
   with the returns from all calls blocked by its completion.
  
   For std::experimental::barrier, the completion phase is empty.
  
   std::experimental::flex_barrier allows the user to control the completion
    phase with
  
   a function object.
  
   The set of participating threads for a barrier constructed for num_threads
    threads
  
   is the first num_threads threads to arrive at its synchronization point after
  
   construction. The same set of threads (except for threads that called
  
   arrive_and_drop()) must arrive at the barrier each cycle.
Member functions¶
 constructor constructs a barrier
  
   (public member function)
  
   destructor destroys the barrier
  
   (public member function)
  
   operator= not copy-assignable
  
   [deleted] (public member function)
  
   arrive_and_wait arrive at the synchronization point and block
  
   (public member function)
  
   arrive at the synchronization point and remove the current thread
  
   arrive_and_drop from the set of participating threads
  
   (public member function)
| 2022.07.31 | http://cppreference.com |