Использование параллельной библиотеки задач .NET (3.5) в C ++ / CLI - PullRequest
2 голосов
/ 20 января 2011

Ну, я загружаю Reactive Extensions для NET 3.5, чтобы использовать его в Visual Studio 2008 с c ++ / cli ...

Но все примеры Task Parallel Library находятся на C # ... Я не могу понятьДАЖЕ преобразование этих простых операторов C # в C ++ / CLI ...

// use an Action delegate and a named method
Task task1 = new Task(new Action(printMessage));

// use a anonymous delegate
Task task2 = new Task(delegate {
printMessage();
});

Как мне написать эти операторы в C ++ / CLI?

С наилучшими пожеланиями

1 Ответ

1 голос
/ 13 февраля 2014
#include "stdafx.h"
#using <System.Core.dll>
using namespace System;
using namespace System::Threading::Tasks;

ref class SomeTask {
public:
    static int run() {
        return 42;
    }
};

int main(array<System::String ^> ^args)
{
    Task<int>^ task = Task<int>::Factory->StartNew(gcnew Func<int>(&SomeTask::run));
    task->Wait();
    Console::WriteLine(task->Result);
    return 0;
}
...