私はかなり新しいですJava Threads
が、並列化に関しては通常Cを使用します。次のパターンと同じパターンを持つアルゴリズムを並列化するには、次のようにします。
void traverse(node* p)
{
if (p->left)
#pragma omp task // p is firstprivate by default
traverse(p->left);
if (p->right)
#pragma omp task // p is firstprivate by default
traverse(p->right);
}
openMP
たとえば、のタスクディレクティブを使用します。
タスクの説明
スレッドがタスク構成に遭遇すると、関連する構造化ブロックのコードからタスクが生成されます。遭遇したスレッドは、タスクをすぐに実行するか、実行を延期する可能性があります。後者の場合、チーム内の任意のスレッドにタスクを割り当てることができます。タスクの完了は、タスク同期構造を使用して保証できます。タスク構成は外部タスク内にネストできますが、内部タスクのタスク領域は外部タスクのタスク領域の一部ではありません。
私の質問は:
これと同じアイデア(タスク)をどのように実装できJava Threads
ますか?