IJobParallelForTransformExtensions.Schedule
Declaration
public static Unity.Jobs.JobHandle Schedule(T jobData, Jobs.TransformAccessArray transforms, Unity.Jobs.JobHandle dependsOn);Параметры
| Параметр | Описание |
|---|---|
| jobData | Задание для планирования. |
| преобразования | TransformAccessArray для запуска задания. |
| dependsOn | JobHandle, содержащий любые задания, которые должны завершить выполнение до начала этого задания. Вы можете объединить несколько заданий с JobHandle.CombineDependencies. Используйте зависимости, чтобы обеспечить, что два задания, которые читают или записывают одни и те же данные, не работают параллельно. |
Возвращаемое значение
JobHandle Обращение, идентифицирующее запланированное задание, которое можно использовать в качестве зависимости для более позднего задания или для обеспечения завершения на главном потоке.
Описание
Расписывает задание IJobParallelForTransform с доступом для чтения и записи данных преобразования.
Чтобы избежать условий гонки, этот режим расписания сортирует входные преобразования по иерархии. Преобразования с общим корневым объектом всегда обрабатываются в одном потоке, хотя порядок обработки в каждой иерархии не определен. TransformAccessArray выявляются на этапе сортировки и не будут передаваться в IJobParallelForTransform.Execute(), так что рабочие места могут спокойно предположить, что все TransformAccess экземпляры действительны, когда используется этот режим планирования.
Если доступ только для чтения для преобразования данных достаточен, используйте IJobParallelForTransformExtensions.ScheduleReadOnlyByRef вместо этого.
Для больших структур заданий используйте IJobParallelForTransformExtensions.ScheduleByRef чтобы избежать любых больших значений пропускания.