ENamedThreads::Type

Windows
MacOS
Linux

Syntax

namespace ENamedThreads
{
    enum Type
    {
        UnusedAnchor                     = -1,
        RHIThread,
        AudioThread,
        GameThread,
        ActualRenderingThread            = GameThread + 1,
        AnyThread                        = 0xff,
        MainQueue                        = 0x000,
        LocalQueue                       = 0x100,
        NumQueues                        = 2,
        ThreadIndexMask                  = 0xff,
        QueueIndexMask                   = 0x100,
        QueueIndexShift                  = 8,
        NormalTaskPriority               = 0x000,
        HighTaskPriority                 = 0x200,
        NumTaskPriorities                = 2,
        TaskPriorityMask                 = 0x200,
        TaskPriorityShift                = 9,
        NormalThreadPriority             = 0x000,
        HighThreadPriority               = 0x400,
        BackgroundThreadPriority         = 0x800,
        NumThreadPriorities              = 3,
        ThreadPriorityMask               = 0xC00,
        ThreadPriorityShift              = 10,
        GameThread_Local                 = GameThread | LocalQueue,
        ActualRenderingThread_Local      = ActualRenderingThread | LocalQueue,
        AnyHiPriThreadNormalTask         = AnyThread | HighThreadPriority | NormalTaskPriority,
        AnyHiPriThreadHiPriTask          = AnyThread | HighThreadPriority | HighTaskPriority,
        AnyNormalThreadNormalTask        = AnyThread | NormalThreadPriority | NormalTaskPriority,
        AnyNormalThreadHiPriTask         = AnyThread | NormalThreadPriority | HighTaskPriority,
        AnyBackgroundThreadNormalTask    = AnyThread | BackgroundThreadPriority | NormalTaskPriority,
        AnyBackgroundHiPriTask           = AnyThread | BackgroundThreadPriority | HighTaskPriority,
    }
}

Values

Name

Description

UnusedAnchor

RHIThread

The always-present, named threads are listed next

AudioThread

GameThread

ActualRenderingThread

The render thread is sometimes the game thread and is sometimes the actual rendering thread.

AnyThread

Not actually a thread index. Means "Unknown Thread" or "Any Unnamed Thread"

MainQueue

High bits are used for a queue index and priority

LocalQueue

NumQueues

ThreadIndexMask

QueueIndexMask

QueueIndexShift

NormalTaskPriority

High bits are used for a queue index task priority and thread priority

HighTaskPriority

NumTaskPriorities

TaskPriorityMask

TaskPriorityShift

NormalThreadPriority

HighThreadPriority

BackgroundThreadPriority

NumThreadPriorities

ThreadPriorityMask

ThreadPriorityShift

GameThread_Local

Combinations

ActualRenderingThread_Local

AnyHiPriThreadNormalTask

AnyHiPriThreadHiPriTask

AnyNormalThreadNormalTask

AnyNormalThreadHiPriTask

AnyBackgroundThreadNormalTask

AnyBackgroundHiPriTask

References

Module

Core

Header

Runtime/Core/Public/Async/TaskGraphInterfaces.h

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