//OpenMP並列
EDIT内側のループは一方で:どのように私は5つのスレッドがすべてのスレッドがそのコードを持った後、単一のスレッドにその結果を渡し、その後CONCURRENTLYコードAと第六のスレッドの実行コードBを実行するのですか?私はイムこれは私の元のコード
omp_set_num_threads(6);
#pragma omp parallel
{
int TID = omp_get_thread_num();
while (true)
{
if (TID < 5)
{
// codeA
}
else
{
// codeB
}
// combine result from A and B
#pragma single
{
//show result A and B
}
}
}
たOpenMP threads "disobey" omp barrier
キーワード障壁を使用することはできません私は5つのスレッドを設定することができるはず十分Can I assign multiple threads to a code section in OpenMP?
をグーグル後に解決策を見つけたかもしれないことを読んでタスクAとスレッド1を実行してタスクBを実行します。結果を蓄積するためにスレッド5を終了する前に、クリティカルを使用するだけです。
複数回同じ質問をしないようにしてください。 [あなたの最初の質問](http://stackoverflow.com/q/36100511/5239503)をもっと明確にしたい場合は、それを編集してください。 – Gilles