C OpenMP计划

前端之家收集整理的这篇文章主要介绍了C OpenMP计划前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图使用以下代码在C程序中获得并行效果
#include<iostream>
using namespace std;

int main()
{

#pragma omp parallel sections
    {
#pragma omp section
        {
        cout<<"Hello";  
        cout<<" ";  
        cout<<"World";  
        cout<<endl;

        }
#pragma omp section
        {
        cout<<"H";
        cout<<"ello";
        cout<<" W";
        cout<<"orld";
        cout<<endl;
        }
#pragma omp section
        cout<<"Hello"<<" "<<"World"<<endl;
#pragma omp section
{       cout<<"Hello ";
        cout<<"World"<<endl;
}
    }
    return 0;
}

我曾多次运行这个程序.由于并行性,我期待交错输出.

但是,每次运行此程序时,输出为:

Hello World
Hello World
Hello World
Hello World

难道我做错了什么?

谢谢

解决方法

代码是正确的,但是很难从这样的小程序中获得交错输出.尝试在输出语句之间调用一些睡眠或类似的调用并进行一些刷新.

(您是否编译并链接了-openmp,-fopenmp或编译器想要听到的内容?)

猜你在找的C&C++相关文章