共用方式為


A.5 使用關鍵的指示詞的運算式

下列範例包含數個critical指示詞 (一節 2.6.2 18] 頁面上)。 本範例會示範一項工作是從佇列取出並處理佇列的模型。 若要防止多個執行緒取消佇列,相同的工作,清除佇列的操作必須在critical一節。 在這個範例中的兩個佇列都是獨立的因為受到critical指示詞,以不同名稱、 xaxisyaxis

#pragma omp parallel shared(x, y) private(x_next, y_next)
{
    #pragma omp critical ( xaxis )
        x_next = dequeue(x);
    work(x_next);
    #pragma omp critical ( yaxis )
        y_next = dequeue(y);
    work(y_next);
}