parallel
定義在平行區域,也就是將由多個執行緒同時執行的程式碼。
#pragma omp parallel [clauses]
{
code_block
}
備註
其中,
- clause (選擇項)
零個或多個子句。 請參閱 < 備註 > 一節清單所支援的子句的平行。
備註
平行指示詞可支援下列 OpenMP 子句:
平行也可與sections (OpenMP)和for (OpenMP)指示詞。
如需詳細資訊,請參閱 2.3 parallel 建構。
範例
下列範例會示範如何設定執行緒數目,以及定義在平行區域。 預設情況下,執行緒的數目等於電腦上的邏輯處理器數目。 比方說,如果您已經有一個已啟用超執行緒的實體處理器的電腦時,會有兩個邏輯處理器,因此,兩個執行緒。
// omp_parallel.cpp
// compile with: /openmp
#include <stdio.h>
#include <omp.h>
int main() {
#pragma omp parallel num_threads(4)
{
int i = omp_get_thread_num();
printf_s("Hello from thread %d\n", i);
}
}
註解
請注意,輸出的順序可能會有所不同不同的電腦。