Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
ConcurrencyUtils.h File Reference

Classes, Types, and macros for managing concurrency. More...

#include "arcane/utils/UtilsTypes.h"
#include "arccore/concurrency/ParallelFor.h"
#include "arccore/concurrency/TaskFactory.h"
#include "arccore/concurrency/ITaskImplementation.h"
#include "arccore/concurrency/Task.h"
#include "arccore/base/ForLoopRunInfo.h"
Include dependency graph for ConcurrencyUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Arcane
 -- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --

Functions

template<int RankValue, typename LambdaType, typename... ReducerArgs>
void Arcane::arcaneParallelFor (const ComplexForLoopRanges< RankValue > &loop_ranges, const ForLoopRunInfo &run_info, const LambdaType &lambda_function, const ReducerArgs &... reducer_args)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.
template<int RankValue, typename LambdaType, typename... ReducerArgs>
void Arcane::arcaneParallelFor (const ComplexForLoopRanges< RankValue > &loop_ranges, const ParallelLoopOptions &options, const LambdaType &lambda_function, const ReducerArgs &... reducer_args)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.
template<int RankValue, typename LambdaType, typename... ReducerArgs>
void Arcane::arcaneParallelFor (const SimpleForLoopRanges< RankValue > &loop_ranges, const ForLoopRunInfo &run_info, const LambdaType &lambda_function, const ReducerArgs &... reducer_args)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.
template<int RankValue, typename LambdaType, typename... ReducerArgs>
void Arcane::arcaneParallelFor (const SimpleForLoopRanges< RankValue > &loop_ranges, const ParallelLoopOptions &options, const LambdaType &lambda_function, const ReducerArgs &... reducer_args)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.
template<int RankValue, typename LambdaType>
void Arcane::arcaneParallelFor (const ComplexForLoopRanges< RankValue > &loop_ranges, const LambdaType &lambda_function)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.
template<int RankValue, typename LambdaType>
void Arcane::arcaneParallelFor (const SimpleForLoopRanges< RankValue > &loop_ranges, const LambdaType &lambda_function)
 Applies the lambda function lambda_function concurrently over the iteration range given by loop_ranges.

Detailed Description

Classes, Types, and macros for managing concurrency.

For more information, refer to the page arcanedoc_parallel_concurrency

Definition in file ConcurrencyUtils.h.