std::promise.set_value 在centos下coredump
#include <future> #include <iostream> int main() { std::promise<void> p; std::future<void> f = p.get_future(); std::cout << std::boolalpha; std::cout << f.valid() << '\n'; p.set_value(); //这里会coredump std::cout << f.valid() << '\n'; f.get(); std::cout << f.valid() << '\n'; }
g++ -o testFuture testFuture.cpp -pthread -std=c++11 编译选项加上-pthread就不会了,因为future需要链接线程库
参考:https://www.5axxw.com/questions/content/lwlcct
纯属记录程序人生,如有差错,欢迎指正,轻喷