1. 程式人生 > >C#Job System如何工作(6)-建立Jobs

C#Job System如何工作(6)-建立Jobs

建立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;
    }
}