内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
如何对成员函数上进行std :: async调用?
例:
class Person{
public:
void sum(int i){
cout << i << endl;
}
};
int main(int argc, char **argv) {
Person person;
async(&Person::sum,&person,4);
}
我想调用sum async。
Person p;
call async to p.sum(xxx)
有几种方法,使用lambda更好,就像这样:
int i=42;
Person p;
auto theasync=std::async([&p,i]{ return p.sum(i);});
这创建了一个std::future
。完整的例子:
http://scrupulousabstractions.tumblr.com/post/36441490955/eclipse-mingw-builds