从未来检索价值时的 SIGABRT
Posted
技术标签:
【中文标题】从未来检索价值时的 SIGABRT【英文标题】:SIGABRT when retrieving value from future 【发布时间】:2011-11-01 14:14:26 【问题描述】:我在使用 C++11 期货时遇到问题。当我在std::async
返回的未来调用wait()
或get()
时,程序接收到从mutex
标头抛出的SIGABRT 信号。可能是什么问题呢?如何解决?
我在 Linux 上使用 g++ 4.6。将以下代码粘贴到 ideone.com 会导致同样的问题。
#include <future>
#include <thread>
int calculate()
return 1;
int main()
auto result = std::async(calculate);
result.wait();// <-- this aborts
int value = result.get();// <-- or this aborts as well if previous line is commented out.
return 0;
【问题讨论】:
不妨看看这个:***.com/questions/4426141/… @Anders K.:这在这里似乎没有任何用处。如果默认启动策略没有崩溃,我会对它感到满意。 【参考方案1】:问题可以通过在g++
中添加-pthread
开关解决。
【讨论】:
以上是关于从未来检索价值时的 SIGABRT的主要内容,如果未能解决你的问题,请参考以下文章
从未从 FusedLocationProviderApi 检索到任何位置
Python 3.6 asyncio - 从未检索到任务异常 - 任务的产量不好:200