0

我从 cpprefernce.com 获得了一个非常简单的代码片段,如下所示:

#include<future>
#include<iostream>
using namespace std;
int main(){
    packaged_task<int(int)> t([](int i){return i+1;});
    auto f = t.get_future();
    cout<<"begin to call t\n";
    t(3);
    cout<<f.get()<<endl;
    return 0;
}

一旦我在 ubuntu18.04 上使用 g++ 运行它,它就会打印:

begin to call t
terminate called after throwing an instance of 'std::system_error'
what():  Unknown error -1
Aborted

那么程序哪里出错了,如何解决呢?

4

0 回答 0