我正在尝试学习如何在 C++ 中使用 ppl.h 。但我不确定我应该在 VS2010 中创建什么样的解决方案来使用它。如果我创建一个没有 CLR 的 Win32 控制台应用程序,则无法识别“并发”,如果我使用 CLR 创建 Win32 控制台应用程序,我会收到一条错误消息
Concurrency Runtime is not supported when compiling /clr.
#include "stdafx.h"
#include <ppl.h>
using namespace System;
void BubbleSort(int* input, int n)
{
concurrency::parallel_for(0,n,[=](int y)
{
for(int k = 0; k< n - 1 -y; k++)
{
if(input[k]> input[k+1])
{
auto temp = input[k+1];
input[k+1] = input[k];
input[k] = temp;
}
}
}
}
int main(array<System::String ^> ^args)
{
Console::WriteLine(L"Hello World");
return 0;
}
最佳答案
您可以创建一个 Win32 控制台应用程序(无 CLR)。一旦你#include <ppl.h>
,Concurrency
命名空间应该可用。请注意,它是 Concurrency::parallel_for
(大写“C”)。
详情请参阅PPL example on MSDN .
关于c++ - 使用并行模式库 (ppl.h),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11564749/