メインスレッドでジョブをスケジュールするには、以下を行う必要があります。
Schedule
を呼び出すと、適切な時点で実行するためのジョブキューにジョブを加えます。一旦スケジュールすると、ジョブを中断することはできません。
ノート Schedule
はメインスレッドからのみ呼び出すことができます。
//結果を保存するために、1 つの float 値を格納できるネイティブの配列を作成します。この例では、説明のためにジョブが完了するのを待ちます。
NativeArray<float> result = new NativeArray<float>(1, Allocator.TempJob);
//ジョブのデータを設定します
MyJob jobData = new MyJob();
jobData.a = 10;
jobData.b = 10;
jobData.result = result;
//ジョブをスケジュールします
JobHandle handle = jobData.Schedule();
//ジョブが完了するのを待ちます
handle.Complete();
//NativeArray のすべてのコピーが同じメモリを指している場合は、自分の NativeArray のコピーの結果にアクセスできます。
float aPlusB = result [0];
//結果の配列に割り当てられたメモリを解放します。
result.Dispose();
2018–06–15 Page published
C# Job System は 2018.1 で公開NewIn20181