Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


SetNestedContainer(AtomicSafetyHandle, bool)

Sets the nested container flag on an AtomicSafetyHandle.
Read time 1 minuteLast updated 10 days ago

Definition

public static void SetNestedContainer(AtomicSafetyHandle handle, bool isNestedContainer)

Parameters

The AtomicSafetyHandle to flag.

isNestedContainer

Set to
true
to flag the container protected by this AtomicSafetyHandle as nested;
false
otherwise.

Remarks

The job system doesn't support nested containers which are containers where the individual elements inside the container are themselves containers), because it can't configure the AtomicSafetyHandle instances stored inside the container's elements independently for each job using the container. This means that attempting to use a nested container in a job doesn't work correctly.
To protect against using nested containers in jobs and prevent subtle and hard-to-diagnose errors from arising, you should set the nested container flag on any container's AtomicSafetyHandle that detects that it is being used to store containers. This makes the Job Debugger throw an explicit error when scheduling a job which tries to use a nested container.