Navigation
API > API/Runtime > API/Runtime/Core
Interface for queued work objects.
This interface is a type of runnable object that requires no per thread initialization. It is meant to be used with pools of threads in an abstract way that prevents the pool from needing to know any details about the object being run. This allows queuing of disparate tasks and servicing those tasks with a generic thread pool.
| Name | IQueuedWork |
| Type | class |
| Header File | /Engine/Source/Runtime/Core/Public/Misc/IQueuedWork.h |
| Include Path | #include "Misc/IQueuedWork.h" |
Syntax
class IQueuedWork
Derived Classes
IQueuedWork derived class hierarchy
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~IQueuedWork() |
Virtual destructor so that child implementations are guaranteed a chance to clean up any resources they allocated. | Misc/IQueuedWork.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| IInternalDataType | TRefCountPtr< IQueuedWorkInternalData > | Internal data can be used by the pool | Misc/IQueuedWork.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| InternalData | IInternalDataType | Misc/IQueuedWork.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void Abandon () |
Tells the queued work that it is being abandoned so that it can do per object clean up as needed. | Misc/IQueuedWork.h | |
void DoThreadedWork () |
This is where the real thread work is done. | Misc/IQueuedWork.h | |
virtual const TCHAR * GetDebugName() |
Returns text to identify the Work, for debug/log purposes only | Misc/IQueuedWork.h | |
virtual EQueuedWorkFlags GetQueuedWorkFlags() |
Returns any special work flags. | Misc/IQueuedWork.h | |
virtual int64 GetRequiredMemory() |
Returns an approximation of the peak memory (in bytes) this task could require during it's execution. | Misc/IQueuedWork.h |