0
说我使用async在单独的线程中调用某个函数,并且函数等待输入数据(数据以2-3秒的间隔出现)。我可以将数据传递给在单独的线程中运行的函数吗?例如:C++ 11如何将数据传递给正在运行的线程
void f(int x) { std::cout << "x: " << x << std::endl;}
int main() {
int x = get_x();
std::async(std::launch::asunc, f, x);
while(true) {
x = get_x();
//update x and sleep 2 sec
}
}
当你真的尝试这个时会发生什么? – YePhIcK
@YePhIcK我想这个函数总是打印第一个x值,不是吗? –
我大多指出,代码甚至不会编译(更少运行),这表明缺少发布问题的研究 – YePhIcK