原文:https://docs.unity3d.com/Manual/JobSystemSchedulingJobs.html
调度Jobs
要在主线程中调度作业,您必须:
- 实例化作业。
- 填充作业的数据。
- 调用Schedule方法。
调用Schedule将Job放入Job队列中以便在适当的时间执行。一旦调度,你就不能打断Job的运行。
注意:您只能在主线程调用Schedule。
调度Jobs的一个例子
// Create a native array of a single float to store the result. This example waits for the job to complete for illustration purposes
NativeArray<float> result = new NativeArray<float>(1, Allocator.TempJob);
// Set up the job data
MyJob jobData = new MyJob();
jobData.a = 10;
jobData.b = 10;
jobData.result = result;
// Schedule the job
JobHandle handle = jobData.Schedule();
// Wait for the job to complete
handle.Complete();
// All copies of the NativeArray point to the same memory, you can access the result in "your" copy of the NativeArray
float aPlusB = result[0];
// Free the memory allocated by the result array
result.Dispose();
本文介绍如何在Unity中使用Job系统进行任务调度,包括实例化作业、填充数据、调用Schedule方法,并提供了一个完整示例,展示如何等待作业完成并处理结果。
4094

被折叠的 条评论
为什么被折叠?



