9 #include "../time_span.h" 55 template <
typename post_phase_action_t>
70 int32 current_phase_number()
const;
75 int32 participant_count()
const;
81 int32 participants_remaining()
const;
92 int32 add_participant();
100 int32 add_participants(
int32 participant_count);
109 int32 remove_participant();
116 int32 remove_participants(
int32 participant_count);
121 void signal_and_wait();
128 bool signal_and_wait(
int32 milliseconds_timeout);
164 bool wait_wtih_cancellation_token();
165 bool wait_wtih_cancellation_token(
int32 milliseconds_timeout);
167 std::shared_ptr<data> data_;
action< barrier & > post_phase_action
Represents the xtd::threading::barrier::post_phase_action delegate.
Definition: barrier.h:36
Contains xtd::threading::barrier_post_phase_exception exception.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
Enables multiple tasks to cooperatively work on an algorithm in parallel through multiple phases...
Definition: barrier.h:29
Contains xtd::threading::cancellation_token class.
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes...
Definition: object.h:32
Represents a time interval.
Definition: time_span.h:26
int_least32_t int32
Represents a 32-bit signed integer.
Definition: types.h:129
Contains a constant used to specify an infinite amount of time. This class cannot be inherited...
Definition: timeout.h:31
delegate< void(arguments_t...)> action
Represents a xtd::delegate that has variable parameters and does not return a value.
Definition: action.h:18
Propagates notification that operations should be canceled.
Definition: cancellation_token.h:37