インテル® C++ コンパイラー 16.0 ユーザー・リファレンス・ガイド

omp taskwait

現在のタスクが開始してから、生成された子タスクの完了まで待機するように指定します。

構文

#pragma omp taskwait

引数

なし

説明

このプラグマは、現在のタスクが開始してから、生成された子タスクの完了まで待機するように指定します。taskwait 領域には、現在のタスク領域の暗黙のタスク・スケジュール・ポイントが含まれます。現在のタスク領域は、taskwait 領域の前に生成された子タスクの実行がすべて完了するまで、タスク・スケジュール・ポイントで一時停止します。

#pragma omp task      // Task 1
{ ...
  #pragma omp task    // Task 2
  { do_work1(); }
  #pragma omp task    // Task 3
  {  ...
   #pragma omp task   // Task 4
     {  do_work2(); }
       ...
     }
     #pragma omp taskwait
     ...
  }
}

taskwait プラグマにより、Task 3 は Task 4 が完了するまで待機します。Task 2 や Task 1 の完了は待機しません。

関連情報