Async

Windows
MacOS
Linux

Classes

Name

Description

Public class

FAsyncGraphTaskBase

Base class for asynchronous functions that are executed in the Task Graph system.

Public class

FAsyncTask

FAsyncTask - template task for jobs queued to thread pools

Public struct

FAsyncThreadIndex

Helper struct used to generate unique ids for the stats.

Public class

FAsyncUncompress

Asynchronous decompression, used for decompressing chunks of memory in the background

Public class

FAutoConsoleTaskPriority

Public class

FAutoDeleteAsyncTask

FAutoDeleteAsyncTask - template task for jobs that delete themselves when complete

Public class

FBaseGraphTask

Base class for all tasks.

Public class

FCompletionList

List of tasks that can be "joined" into one task which can be waited on or used as a prerequisite.

Public class

FCustomStatIDGraphTaskBase

Class that generalizes functionality of storing and exposing custom stat id.

Public class

FDelegateGraphTask

Task class for more full featured delegate based tasks.

Public class

FFunctionGraphTask

Task class for lambda based tasks.

Public class

FFutureState

Base class for the internal state of asynchronous return values (futures).

Public class

FGraphEvent

A FGraphEvent is a list of tasks waiting for something.

Public class

FNonAbandonableTask

Stub class to use a base class for tasks that cannot be abandoned

Public class

FNullGraphTask

FNullGraphTask is a task that does nothing.

Public struct

FParallelForData

Struct to hold the working data; this outlives the ParallelFor call; lifetime is controlled by a shared pointer

Public class

FParallelForTask

Public struct

FRenderThreadStatics

Public class

FReturnGraphTask

FReturnGraphTask is a task used to return flow control from a named thread back to the original caller of ProcessThreadUntilRequestReturn

Public class

FSimpleDelegateGraphTask

Task class for simple delegate based tasks.

Public class

FTaskGraphInterface

Interface tot he task graph system

Public class

FTriggerEventGraphTask

FTriggerEventGraphTask is a task that triggers an event

Public class

IAsyncProgress

Interface for checking the progress of asynchronous tasks.

Public class

IAsyncReadFileHandle

Public class

IAsyncReadRequest

Public class

IAsyncTask

Interface for asynchronous tasks.

Public class

IMappedFileHandle

Public class

IMappedFileRegion

Public class

TAsyncGraphTask

Template for asynchronous functions that are executed in the Task Graph system.

Public class

TAsyncQueuedWork

Template for asynchronous functions that are executed in the queued thread pool.

Public class

TAsyncResult

Template for asynchronous return values.

Public class

TAsyncRunnable

Template for asynchronous functions that are executed in a separate thread.

Public class

TFuture

Template for unshared futures.

Public class

TFutureBase

TFuture Abstract base template for futures and shared futures.

Public class

TFutureState

Implements the internal state of asynchronous return values (futures).

Public class

TGraphTask

The user defined task type can take arguments to a constructor.

Public class

TPromise

Template for promises.

Public class

TPromiseBase

TPromise

Public class

TSharedFuture

TSharedFuture Template for shared futures.

Typedefs

Name

Description

FAsyncFileCallBack

FGraphEventArray

Convenience typedef for a an array a graph events

FGraphEventRef

Convenience typedef for a reference counted pointer to a graph event

Enums

Name

Description

Public enum

EAsyncExecution

Enumerates available asynchronous execution methods.

Public enum

EAsyncTaskState

Enumerates possible states of slow running tasks.

Public enum

ENamedThreads::Type

Public enum

EPowerSavingEligibility

Public enum

ESubsequentsMode::Type

Functions

Name Description

Public function

int32

 

ENamedThreads::GetQueueIndex

(
    Type ThreadAndIndex
)

Public function

Type

 

ENamedThreads::GetRenderThread()

Public function

Type

 

ENamedThreads::GetRenderThread_Local()

Public function

int32

 

ENamedThreads::GetTaskPriority

(
    Type ThreadAndIndex
)

Public function

Type

 

ENamedThreads::GetThreadIndex

(
    Type ThreadAndIndex
)

Public function

int32

 

ENamedThreads::GetThreadPriorityIndex

(
    Type ThreadAndIndex
)

Public function

Type

 

ENamedThreads::SetPriorities

(
    Type ThreadAndIndex,
    int32 PriorityIndex,
    bool bHiPri
)

Public function

Type

 

ENamedThreads::SetPriorities

(
    Type ThreadAndIndex,
    Type ThreadPriority,
    Type TaskPriority
)

Public function

void

 

ENamedThreads::SetRenderThread

(
    Type Thread
)

Public function

void

 

ENamedThreads::SetRenderThread_Local

(
    Type Thread
)

Public function

Type

 

ENamedThreads::SetTaskPriority

(
    Type ThreadAndIndex,
    Type TaskPriority
)

Public function

Type

 

ENamedThreads::SetThreadPriority

(
    Type ThreadAndIndex,
    Type ThreadPriority
)

Public function

void

 

FutureDetail::SetPromiseValue

(
    TPromise< ResultType >& Promise,
    Func& Function,
    TFuture< ParamType >&& Param
)

Template for setting a promise value from a continuation.

Public function

void

 

FutureDetail::SetPromiseValue

(
    TPromise< void >& Promise,
    Func& Function,
    TFuture< ParamType >&& Param
)

Public function

TPromise< Re...

 

MakeFulfilledPromise

(
    ArgTypes&&... Args
)

Helper to create and immediately fulfill a promise

Public function

void

 

ParallelFor

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

General purpose parallel for that uses the taskgraph

Public function

void

 

ParallelForWithPreWork

(
    int32 Num,
    TFunctionRef< void(int32)> Body,
    TFunctionRef< void()> CurrentThread...,
    bool bForceSingleThread
)

General purpose parallel for that uses the taskgraph

Public function

void

 

SetPromise

(
    TPromise< ResultType >& Promise,
    CallableType&& Callable
)

Template for setting a promise value from a callable.

Public function

void

 

SetPromise

(
    TPromise< void >& Promise,
    CallableType&& Callable
)

Variables

Name Description

Public variable

int32

 

GEnablePowerSavingThreadPriorityReductionCVar

Public variable

*auto

 

Result

Public variable

 

STATCAT_Advanced

Public variable

*TUniqueFun...

 

Task

Execute a given function asynchronously.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback