Aracılığıyla paylaş


sıralı (OpenMP yönergeleri)

Döngü gibi sıralı bir döngü çalıtırılması gereken bir parallelized altında bu kodu belirtir.

#pragma omp ordered
   structured-block

Notlar

Sipariş yönergesi dinamik kapsamı içinde olması gerekir bir (OpenMP için) veya için paralel yapısı ile bir Sipariş yan tümcesi.

Sipariş yönergesi yok OpenMP yan destekler.

Daha fazla bilgi için bkz. 2.6.6 sıralı yapýsýna.

Örnek

// omp_ordered.cpp
// compile with: /openmp 
#include <stdio.h>
#include <omp.h>

static float a[1000], b[1000], c[1000];

void test(int first, int last) 
{
    #pragma omp for schedule(static) ordered
    for (int i = first; i <= last; ++i) {
        // Do something here.
        if (i % 2) 
        {
            #pragma omp ordered 
            printf_s("test() iteration %d\n", i);
        }
    }
}

void test2(int iter) 
{
    #pragma omp ordered
    printf_s("test2() iteration %d\n", iter);
}

int main( ) 
{
    int i;
    #pragma omp parallel
    {
        test(1, 8);
        #pragma omp for ordered
        for (i = 0 ; i < 5 ; i++)
            test2(i);
    }
}
  

Ayrıca bkz.

Başvuru

OpenMP yönergeleri