这是我在这里的第一篇文章,所以请宽容:)
我在使用 promise 类(c++11 的一部分)中的 set_value_at_thread_exit() 方法时遇到问题。在 VS2013 中一切正常,但 GCC 给我以下错误消息:
error: ‘class std::promise<int>’ has no member named ‘set_value_at_thread_exit’
args->result.set_value_at_thread_exit(result);
我已经在 Ubuntu 14.04 上尝试过 GCC 4.8 和 4.9
代码是:
[...]
int result = 0;
Socket socket;
result = CreateUDPSocket(&socket, false, ANY_IP, args->port);
if (result != ERROR_SUCCESS)
{
args->result.set_value_at_thread_exit(result);
return;
}
args->result.set_value(ERROR_SUCCESS);
[...]
最佳答案
不幸的是,它还不受支持。如果您查看 status page
30.6.5 | Class template
promise
| Partial | Missingset_*_at_thread_exit
关于c++ - gcc 支持 set_value_at_thread_exit() 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24170666/