std::execution::seq, std::execution::par, std::execution::par_unseq, std::execution::unseq

< cpp‎ | algorithm
Algorithm library
Constrained algorithms and algorithms on ranges (C++20)
Concepts and utilities: std::Sortable, std::projected, ...
Constrained algorithms: std::ranges::copy, std::ranges::sort, ...
Execution policies (C++17)
Non-modifying sequence operations
Modifying sequence operations
Operations on uninitialized storage
Partitioning operations
Sorting operations
Binary search operations
Set operations (on sorted ranges)
Heap operations
Minimum/maximum operations
Numeric operations
C library
Defined in header <execution>
inline constexpr std::execution::sequenced_policy seq { /* unspecified */ };
(since C++17)
inline constexpr std::execution::parallel_policy par { /* unspecified */ };
(since C++17)
inline constexpr std::execution::parallel_unsequenced_policy par_unseq { /* unspecified */ };
(since C++17)
inline constexpr std::execution::unsequenced_policy unseq { /* unspecified */ };
(since C++20)

std::execution::seq, std::execution::par, std::execution::par_unseq, and std::execution::unseq are instances of the execution policy types std::execution::sequenced_policy, std::execution::parallel_policy, std::execution::parallel_unsequenced_policy, and std::execution::unsequenced_policy respectively. They are used to specify the execution policy of parallel algorithms - i.e., the kinds of parallelism allowed.

Additional execution policies may be provided by a standard library implementation (possible future additions may include std::parallel::cuda and std::parallel::opencl)

See also

execution policy types