Class TaskGraph
Graph-based asynchronous tasks scheduler for high-performance computing and processing.
Inherited Members
TaskGraph
Assembly: FlaxEngine.dll
File: Engine/Threading/TaskGraph.h
Syntax
public class TaskGraph : public ScriptingObject
Methods
AddSystem(TaskGraphSystem* system)
Adds the system to the graph for the execution.
Declaration
public void AddSystem(TaskGraphSystem* system)
Parameters
TaskGraphSystem
system
The system to add. |
DispatchJob(const Function<void(int32)>& job, int32 jobCount=1)
Dispatches the job for the execution.
Call only from system's Execute method to properly schedule job.
Declaration
public void DispatchJob(const Function<void(int32)>& job, int32 jobCount=1)
Parameters
Function<void(int32)>
job
The job. Argument is an index of the job execution. |
int32
jobCount
The job executions count. |
Execute()
Schedules the asynchronous systems execution including ordering and dependencies handling.
Declaration
public void Execute()
GetSystems()
Gets the list of systems.
Declaration
public Array<TaskGraphSystem* , InlinedAllocation<64>> GetSystems() const
Returns
Array<TaskGraphSystem , InlinedAllocation<64>>
|
RemoveSystem(TaskGraphSystem* system)
Removes the system from the graph.
Declaration
public void RemoveSystem(TaskGraphSystem* system)
Parameters
TaskGraphSystem
system
The system to add. |