agency::concurrent_execution_policy Class Reference
Encapsulates requirements for creating groups of concurrent execution agents. More...
Inheritance diagram for agency::concurrent_execution_policy:
Additional Inherited Members | |
Public Types inherited from agency::basic_execution_policy< concurrent_agent, concurrent_executor, concurrent_execution_policy > | |
| using | execution_agent_type = concurrent_agent |
| The type of execution agent associated with this basic_execution_policy. | |
| using | executor_type = concurrent_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< concurrent_agent, concurrent_executor, concurrent_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, concurrent_execution_policy requires the creation of a group of execution agents which execute concurrently. Agents in such a group are guaranteed to make forward progress.
The type of execution agent concurrent_execution_policy induces is concurrent_agent, and the type of its associated executor is concurrent_executor.
- See also
- Execution Policies
- basic_execution_policy
- con
- concurrent_agent
- concurrent_executor
- concurrent_execution_tag

Public Types inherited from