私はOpenMP with C++プログラムを持っています。並列領域内には#pragma omp task
を含む平行領域があります。ここでは、実行中のスレッドが満たす条件に応じて並列領域を終了する方法を知りたいと思います。OpenMPで並列領域を条件付きで終了するにはどうすればよいですか?
#pragma omp parallel
{
#pragma omp task
{
//upon reaching a condition i would like to break out of the parallel region. (all threads should exit this parallel region)
}
}