C#Job System如何工作(6)-建立Jobs
阿新 • • 發佈:2018-12-21
建立Jobs
要在Unity中建立作業,您需要實現IJob介面。IJob允許您排程可以與其他正在執行的Job並行執行的單個Job。
注意:“Job”是Unity中用於實現IJob介面的任何結構的集合術語。
要建立Jobs,您需要:
- 建立一個繼承自IJob的結構體。
- 新增Jobs使用的成員變數(blittable型別或NativeContainer型別)。
- 在結構體中實現一個繼承自IJob介面的Execute的方法。
當執行job時,這個Execute方法在單個核心上執行一次。
注意:在設計job時,請記住它們在資料副本上執行,除非是NativeContainer。因此,從主執行緒中的作業訪問資料的唯一方法是寫入NativeContainer。
簡單job定義的示例
// Job adding two floating point values together
public struct MyJob : IJob
{
public float a;
public float b;
public NativeArray<float> result;
public void Execute()
{
result[0] = a + b;
}
}