agency::parallel_execution_policy Class Reference
Encapsulates requirements for creating groups of parallel execution agents. More...
Inheritance diagram for agency::parallel_execution_policy:
Additional Inherited Members | |
Public Types inherited from agency::basic_execution_policy< parallel_agent, parallel_executor, parallel_execution_policy > | |
using | execution_agent_type = parallel_agent |
The type of execution agent associated with this basic_execution_policy. | |
using | executor_type = parallel_executor |
The type of executor associated with this basic_execution_policy. | |
using | param_type = typename execution_agent_traits< execution_agent_type >::param_type |
The type of this execution policy's parameterization. | |
Public Member Functions inherited from agency::basic_execution_policy< parallel_agent, parallel_executor, parallel_execution_policy > | |
basic_execution_policy ()=default | |
The default constructor default constructs this execution policy's associated executor and parameterization. | |
basic_execution_policy (const param_type ¶m, const executor_type &executor=executor_type{}) | |
This constructor constructs a new basic_execution_policy given a parameterization and executor. More... | |
const param_type & | param () const |
Returns this execution policy's parameterization. | |
executor_type & | executor () const |
Returns this execution policy's associated executor. | |
auto | on (const OtherExecutor &exec) const -> decltype(replace_executor(*this, exec)) |
Replaces this execution policy's executor with another. More... | |
see_below | operator() (Arg1 &&arg1, Args &&...args) const |
Reparameterizes this execution policy. More... | |
Detailed Description
When used as a control structure parameter, parallel_execution_policy
requires the creation of a group of execution agents which execute in parallel. When agents in such a group execute on separate threads, they have no order. Otherwise, if agents in such a group execute on the same thread, they execute in an unspecified order.
The type of execution agent parallel_execution_policy
induces is parallel_agent
, and the type of its associated executor is parallel_executor
.
- See also
- Execution Policies
- basic_execution_policy
- par
- parallel_agent
- parallel_executor
- parallel_execution_tag