std::experimental::flex_barrier::flex_barrier
来自cppreference.com
                    
                                        
                    < cpp | experimental | flex barrier
                    
                                                            
                    |   explicit flex_barrier( std::ptrdiff_t num_threads );  | 
(1) | (并发 TS) | 
|   template < class F > flex_barrier( std::ptrdiff_t num_threads, F completion );  | 
(2) | (并发 TS) | 
|   flex_barrier( const flex_barrier & ) = delete;  | 
(3) | (并发 TS) | 
2) 为 
num_threads 个参与线程构造 flex_barrier ,将 completion 用于完成阶段。参与线程集是首 num_threads 个到达同步点的线程。3) 复制构造函数被删除; 
flex_barrier 不可复制。参数
| num_threads | - |  flex_barrier 的参与线程数;必须非负
 | 
| completion | - | 控制完成阶段的函数对象;必须以无参数可调用 (Callable) 并拥有 std::ptrdiff_t 返回类型,调用时必须返回不小于 -1 的值且不抛出异常。 | 
| 类型要求 | ||
 -F 必须符合可复制构造 (CopyConstructible)  的要求。
 | ||
注意
若 num_threads 为零,则参与线程集为空,而 flex_barrier 只能被销毁。