首页 > 解决方案 > 如何在 C++/CLI 中有返回值的 gcnew 任务?

问题描述

我在 C++/CLI 上使用任务。我想使用 MyTask(),等到超时,然后获取返回值。

但是,我不知道。

bool MyClass::MyTask(Object^ obj)
{
    MyClass^ my_obj = (MyClass^) obj;

    // Do something
    
    return true;
}

void MyClass::Method()
{
    //Task<bool>^ task = gcnew Task<bool>(gcnew System::Action<Object^>(&MyClass::MyTask), this); // This lin is invalid.

    //task->Start(); // I think I have to use Run() instead.
    
    bool result = await System::Threading::Tasks::Task::Run(gcnew System::Action<Object^>(&MyClass::MyTask), this); // This line is invalid.
}

标签: c#c++task

解决方案


推荐阅读