Struct JobDependencyTracker
Automatic dependency tracking for the Unity Job System.
Uses reflection to find the [ReadOnly] and [WriteOnly] attributes on job data struct fields. These are used to automatically figure out dependencies between jobs.
A job that reads from an array depends on the last job that wrote to that array. A job that writes to an array depends on the last job that wrote to the array as well as all jobs that read from the array.
struct ExampleJob : IJob {
public NativeArray<int> someData;
public void Execute () {
// Do something
}
}
void Start () {
var tracker = new JobDependencyTracker();
var data = new NativeArray<int>(100, Allocator.TempJob);
var job1 = new ExampleJob {
someData = data
}.Schedule(ref tracker);
var job2 = new ExampleJob {
someData = data
}.Schedule(ref tracker);
// job2 automatically depends on job1 because they both require read/write access to the data array
}
Inner Types
Public Methods
Disposes the native array after all the current jobs are finished with it.
Diposes this tracker.
Schedules a raycast batch command.
Public Variables
JobHandle that represents a dependency for all jobs.