QueryJob.md
July 25, 2024 · View on GitHub
Friflo.Engine.ECS
Friflo.Engine.ECS
QueryJob Class
A QueryJob enables Parallel query execution using multiple threads
to reduce execution time of large queries.
They are created by the ArchetypeQuery.ForEach() methods.
public abstract class QueryJob
Inheritance System.Object 🡒 QueryJob
Derived
↳ QueryJob<T1,T2,T3,T4,T5>
↳ QueryJob<T1,T2,T3,T4>
↳ QueryJob<T1,T2,T3>
↳ QueryJob<T1,T2>
↳ QueryJob<T1>
Remarks
To execute a query job Sequential use the Run() method.
To execute a query job Parallel use the RunParallel() method.
| Properties | |
|---|---|
| JobRunner | The job runner used to execute a query Parallel. |
| MinParallelChunkLength | The minimum number of Chunk<T> components per thread required to execute a query Parallel. Default: 1000. |
| ParallelComponentMultiple | The ParallelComponentMultiple is used to align the Chunk<T> components length of a Parallel executed component chunks. |
| Methods | |
|---|---|
| Run() | Execute the query Sequential. |
| RunParallel() | Execute the query. See Example.. All chunks having at least MinParallelChunkLength * ThreadCount components are executed Parallel. |