Namespaces | |
| namespace | detail |
Classes | |
| class | dispatch_queue |
| class | task |
| class | task_error |
Typedefs | |
| using | task_tag = int |
Enumerations | |
| enum class | task_state { invalid , pending , ready , failed } |
Functions | |
| template<typename T> | |
| task< void > | when_all (std::initializer_list< task< T > > tasks) |
| template<typename TaskRange> | |
| task< void > | when_all (const TaskRange &tasks) |
| template<typename T> | |
| task< void > | when_any (std::initializer_list< task< T > > tasks) |
| template<typename TaskRange> | |
| task< void > | when_any (const TaskRange &tasks) |
| using dispatch_queue::task_tag = int |
Tags used by dispatch_queue::dispatch_tagged. Tasks tagged with the same value never run in parallel: at most one task is processed for each tag at a time.
|
strong |
Current state of a task.
| task< void > dispatch_queue::when_all | ( | const TaskRange & | tasks | ) |
Create a task that finishes whenever all given tasks finish.
If any subtask fails, this task fail with a task_error. Otherwise, it succeeds.
| task< void > dispatch_queue::when_all | ( | std::initializer_list< task< T > > | tasks | ) |
Create a task that finishes whenever all given tasks finish.
If any subtask fails, this task fail with a task_error. Otherwise, it succeeds.
| task< void > dispatch_queue::when_any | ( | const TaskRange & | tasks | ) |
Create a task that finishes whenever any of the given tasks finish.
If the first finishing task fails, this task fails with the same exception. Otherwise, it succeeds.