ParallelForWithPreWork

General purpose parallel for that uses the taskgraph

Choose your operating system:

Windows

macOS

Linux

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/Async/ParallelFor.h

Include

#include "Async/ParallelFor.h"

Syntax

void ParallelForWithPreWork
(
    int32 Num,
    TFunctionRef< void)> Body,
    TFunctionRef< void()> CurrentThreadWorkToDoBeforeHelping,
    bool bForceSingleThread,
    bool bPumpRenderingThread
)

Remarks

General purpose parallel for that uses the taskgraph

Parameters

Parameter

Description

Num;

number of calls of Body; Body(0), Body(1)....Body(Num - 1)

Body;

Function to call from multiple threads

CurrentThreadWorkToDoBeforeHelping;

The work is performed on the main thread before it starts helping with the ParallelFor proper

bForceSingleThread;

Mostly used for testing, if true, run single threaded instead. 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.