Navigation
API > API/Runtime > API/Runtime/Core
Overloads
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void ParallelForWithTaskContext
(
TArray< ContextType, ContextAllocatorType >& OutContexts, |
General purpose parallel for that uses the taskgraph. | Async/ParallelFor.h | |
void ParallelForWithTaskContext
(
TArray< ContextType, ContextAllocatorType >& OutContexts, |
General purpose parallel for that uses the taskgraph. | Async/ParallelFor.h | |
void ParallelForWithTaskContext
(
const TCHAR* DebugName, |
General purpose parallel for that uses the taskgraph. | Async/ParallelFor.h | |
void ParallelForWithTaskContext
(
const TCHAR* DebugName, |
General purpose parallel for that uses the taskgraph. | Async/ParallelFor.h | |
void ParallelForWithTaskContext
(
const TCHAR* DebugName, |
General purpose parallel for that uses the taskgraph. | Async/ParallelFor.h |
ParallelForWithTaskContext(TArray< ContextType, ContextAllocatorType > &, int32, const FunctionType &, EParallelForFlags)
Description
General purpose parallel for that uses the taskgraph. This variant constructs for the caller a user-defined context object for each task that may get spawned to do work, and passes it on to the loop body to give it a task-local "workspace" that can be mutated without need for synchronization primitives.
| Name | ParallelForWithTaskContext |
| Type | function |
| Header File | /Engine/Source/Runtime/Core/Public/Async/ParallelFor.h |
| Include Path | #include "Async/ParallelFor.h" |
template<typename ContextType, typename ContextAllocatorType, typename FunctionType>
void ParallelForWithTaskContext
(
TArray < ContextType, ContextAllocatorType > & OutContexts,
int32 Num,
const FunctionType & Body,
EParallelForFlags Flags
)
Parameters
| Name | Remarks |
|---|---|
| OutContexts; | Array that will hold the user-defined, task-level context objects (allocated per parallel task) |
| Num; | number of calls of Body; Body(0), Body(1)....Body(Num - 1) |
| Body; | Function to call from multiple threads |
| Flags; | Used to customize the behavior of the ParallelFor if needed. Notes: Please add stats around to calls to parallel for and within your lambda as appropriate. Do not clog the task graph with long running tasks or tasks that block. |
ParallelForWithTaskContext(TArray< ContextType, ContextAllocatorType > &, int32, const ContextConstructorType &, const FunctionType &, EParallelForFlags)
Description
General purpose parallel for that uses the taskgraph. This variant constructs for the caller a user-defined context object for each task that may get spawned to do work, and passes it on to the loop body to give it a task-local "workspace" that can be mutated without need for synchronization primitives. For this variant, the user provides a callable to construct each context element.
| Name | ParallelForWithTaskContext |
| Type | function |
| Header File | /Engine/Source/Runtime/Core/Public/Async/ParallelFor.h |
| Include Path | #include "Async/ParallelFor.h" |
template<typename ContextType, typename ContextAllocatorType, typename ContextConstructorType, typename FunctionType>
void ParallelForWithTaskContext
(
TArray < ContextType, ContextAllocatorType > & OutContexts,
int32 Num,
const ContextConstructorType & ContextConstructor,
const FunctionType & Body,
EParallelForFlags Flags
)
Parameters
| Name | Remarks |
|---|---|
| OutContexts; | Array that will hold the user-defined, task-level context objects (allocated per parallel task) |
| Num; | number of calls of Body; Body(0), Body(1)....Body(Num - 1) |
| ContextConstructor; | Function to call to initialize each task context allocated for the operation |
| Body; | Function to call from multiple threads |
| Flags; | Used to customize the behavior of the ParallelFor if needed. Notes: Please add stats around to calls to parallel for and within your lambda as appropriate. Do not clog the task graph with long running tasks or tasks that block. |
ParallelForWithTaskContext(const TCHAR *, TArray< ContextType, ContextAllocatorType > &, int32, const ContextConstructorType &, const FunctionType &, EParallelForFlags)
Description
General purpose parallel for that uses the taskgraph. This variant constructs for the caller a user-defined context object for each task that may get spawned to do work, and passes it on to the loop body to give it a task-local "workspace" that can be mutated without need for synchronization primitives. For this variant, the user provides a callable to construct each context element.
| Name | ParallelForWithTaskContext |
| Type | function |
| Header File | /Engine/Source/Runtime/Core/Public/Async/ParallelFor.h |
| Include Path | #include "Async/ParallelFor.h" |
template<typename ContextType, typename ContextAllocatorType, typename ContextConstructorType, typename FunctionType>
void ParallelForWithTaskContext
(
const TCHAR * DebugName,
TArray < ContextType, ContextAllocatorType > & OutContexts,
int32 Num,
const ContextConstructorType & ContextConstructor,
const FunctionType & Body,
EParallelForFlags Flags
)
Parameters
| Name | Remarks |
|---|---|
| OutContexts; | Array that will hold the user-defined, task-level context objects (allocated per parallel task) |
| DebugName; | ProfilingScope and Debugname |
| Num; | number of calls of Body; Body(0), Body(1)....Body(Num - 1) |
| ContextConstructor; | Function to call to initialize each task context allocated for the operation |
| Body; | Function to call from multiple threads |
| Flags; | Used to customize the behavior of the ParallelFor if needed. Notes: Please add stats around to calls to parallel for and within your lambda as appropriate. Do not clog the task graph with long running tasks or tasks that block. |
ParallelForWithTaskContext(const TCHAR *, TArray< ContextType, ContextAllocatorType > &, int32, int32, const FunctionType &, EParallelForFlags)
Description
General purpose parallel for that uses the taskgraph. This variant constructs for the caller a user-defined context object for each task that may get spawned to do work, and passes it on to the loop body to give it a task-local "workspace" that can be mutated without need for synchronization primitives.
| Name | ParallelForWithTaskContext |
| Type | function |
| Header File | /Engine/Source/Runtime/Core/Public/Async/ParallelFor.h |
| Include Path | #include "Async/ParallelFor.h" |
template<typename ContextType, typename ContextAllocatorType, typename FunctionType>
void ParallelForWithTaskContext
(
const TCHAR * DebugName,
TArray < ContextType, ContextAllocatorType > & OutContexts,
int32 Num,
int32 MinBatchSize,
const FunctionType & Body,
EParallelForFlags Flags
)
Parameters
| Name | Remarks |
|---|---|
| OutContexts; | Array that will hold the user-defined, task-level context objects (allocated per parallel task) |
| DebugName; | ProfilingScope and Debugname |
| Num; | number of calls of Body; Body(0), Body(1)....Body(Num - 1) |
| MinBatchSize; | Minimum Size of a Batch (will only launch DivUp(Num, MinBatchSize) Workers |
| Body; | Function to call from multiple threads |
| Flags; | Used to customize the behavior of the ParallelFor if needed. Notes: Please add stats around to calls to parallel for and within your lambda as appropriate. Do not clog the task graph with long running tasks or tasks that block. |
ParallelForWithTaskContext(const TCHAR *, TArray< ContextType, ContextAllocatorType > &, int32, int32, const ContextConstructorType &, const FunctionType &, EParallelForFlags)
Description
General purpose parallel for that uses the taskgraph. This variant constructs for the caller a user-defined context object for each task that may get spawned to do work, and passes it on to the loop body to give it a task-local "workspace" that can be mutated without need for synchronization primitives. For this variant, the user provides a callable to construct each context element.
| Name | ParallelForWithTaskContext |
| Type | function |
| Header File | /Engine/Source/Runtime/Core/Public/Async/ParallelFor.h |
| Include Path | #include "Async/ParallelFor.h" |
template<typename ContextType, typename ContextAllocatorType, typename ContextConstructorType, typename FunctionType>
void ParallelForWithTaskContext
(
const TCHAR * DebugName,
TArray < ContextType, ContextAllocatorType > & OutContexts,
int32 Num,
int32 MinBatchSize,
const ContextConstructorType & ContextConstructor,
const FunctionType & Body,
EParallelForFlags Flags
)
Parameters
| Name | Remarks |
|---|---|
| OutContexts; | Array that will hold the user-defined, task-level context objects (allocated per parallel task) |
| DebugName; | ProfilingScope and Debugname |
| Num; | number of calls of Body; Body(0), Body(1)....Body(Num - 1) |
| MinBatchSize; | Minimum Size of a Batch (will only launch DivUp(Num, MinBatchSize) Workers |
| ContextConstructor; | Function to call to initialize each task context allocated for the operation |
| Body; | Function to call from multiple threads |
| Flags; | Used to customize the behavior of the ParallelFor if needed. Notes: Please add stats around to calls to parallel for and within your lambda as appropriate. Do not clog the task graph with long running tasks or tasks that block. |