「フェンス」の版間の差分

編集の要約なし
編集の要約なし
9行目: 9行目:
たとえば[[ゲーム]]で1フレームごとに[[マルチスレッド]]を止めたい場合があるとします。
たとえば[[ゲーム]]で1フレームごとに[[マルチスレッド]]を止めたい場合があるとします。
フェンスがない時代はアイドル状態(タスク全停止)になるのを待っていました。
フェンスがない時代はアイドル状態(タスク全停止)になるのを待っていました。
 gpu.addTask(task1);
 gpu.addTask(task2);
 gpu.addTask(computeTask);
  gpu.waitForIdle();
  gpu.waitForIdle();


15行目: 18行目:
  gpu.addTask(task1, fence);
  gpu.addTask(task1, fence);
  gpu.addTask(task2, fence);
  gpu.addTask(task2, fence);
gpu.addTask(task3, fence);
  gpu.addTask(computeTask, null);
  gpu.addTask(computeTask, null);
  gpu.waitForFence(fence); // 全taskが終わるのを待つ
  gpu.waitForFence(fence); // task1とtask2の両方が終わるのを待つ