0
我有一個多線程應用程序的簡單代碼,但不管我傳遞的線程數是多少,它只能用一個線程執行。最初,我認爲這是我的電腦的問題,但我嘗試了另一個,它也沒有工作。我有什麼不對嗎?如果有幫助,我正在使用Visual Studio 2015。Visual C++只有一個線程正在工作(OpenMP)
int th_id, nthreads;
#pragma omp parallel private(th_id) shared(nthreads) num_threads(3)
{
th_id = omp_get_thread_num();
#pragma omp critical
{
cout << "Hello World from thread " << th_id << '\n';
}
#pragma omp barrier
#pragma omp master
{
nthreads = omp_get_num_threads();
cout << "There are " << nthreads << " threads" << '\n';
}
}