版本:Unity 6 (6000.0)
语言英语
  • C#

IJobParallelForTransformExtensions.EarlyJobInit

提出变动建议

成功!

感谢您帮助我们提升 Unity 文档的质量。虽然我们无法受理所有意见,但我们确实会阅读用户提出的每条变动建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您建议的变动无法提交。请在几分钟后<a>重试</a>。感谢您抽出宝贵时间,帮助我们提升 Unity 文档的质量。

关闭

取消

声明

public static void EarlyJobInit();

描述

收集并缓存内部作业系统托管绑定的反射数据。

Unity 负责调用此方法 - 不要自行调用此方法。当项目中包含 Jobs 包时,Unity 会在启动时生成代码以调用 EarlyJobInit。这会带来以下好处

  • 作业初始化不会在作业调度期间延迟发生,而这会增加调度作业所需时间。
  • Burst 编译代码可以调度作业,因为初始化的反射部分已在 EarlyJobInit 中执行,而这与 Burst 编译器约束不兼容。

注意:虽然 Jobs 包代码生成器对所有封闭作业类型自动处理此问题,但您必须使用 Unity.Jobs.RegisterGenericJobTypeAttribute 手动为具有泛型参数的那些作业类型(例如 IJobParallelForTransform&lt;MyJobType&lt;T&gt;&gt;)注册这些作业类型对于每个专业化作业类型。