Unity 6.3
0 онлайн 82 гостей 3 в системе
Вход

IJobParallelForExtensions.Schedule

Declaration

public static Unity.Jobs.JobHandle Schedule(T jobData, int arrayLength, int innerloopBatchCount, Unity.Jobs.JobHandle dependsOn);

Параметры

Параметр Описание
jobData Задание и данные для планирования.
arrayLength Метод Execute этого задания будет вызван указанное количество раз, при этом его аргумент-индекс принимает значения от 0 до (arrayLength - 1). Обычно это соответствует длине массива или похожего на массив контейнера, переданного в структуру задания, но так бывает не всегда.
innerloopBatchCount Число итераций, над которыми выполняется workstealing. Например, значение 32 означает, что очередь заданий похищает 32 итерации, а затем выполняет их в эффективном внутреннем цикле.
dependsOn JobHandle зависимости задания. Вы можете использовать зависимости, чтобы убедиться, что задание выполняется на рабочих потоках после завершения выполнения зависимости и что два задания, чтящие или записывающие одни и те же данные, не работают параллельно.

Возвращаемое значение

JobHandle Дескриптор JobHandle запланированного задания. JobHandle можно использовать как зависимость для последующего задания или чтобы гарантировать завершение задания в главном потоке.

Описание

Расписывает одновременное выполнение задания на нескольких рабочих потоках.

Обратите внимание, что эта семантика несовместима с методами с таким же именем в других интерфейсах заданий. [[IJobParallelFor] не раскрывает способ обработки всех элементов цикла на одном рабочем потоке. Вместо этого используйте IJobForExtensions.ScheduleByRef.

Для больших структур заданий используйте IJobParallelForExtensions.ScheduleByRef чтобы избежать любых больших значений пропускания.

Дополнительные ресурсы: IJobParallelFor.