"The default startup policy for std :: async is std :: launch :: any, which means that the implementation can choose for you."
You need std::launch::async , basically:
std::future<int> the_answer=std::async(std::launch::async, calculate_the_answer_to_LtUaE);
To verify that the asynchronous call is placed on a new thread. Otherwise, it can simply disable the call to the calculation function before the_answer.get() and call it in the current thread.
SingleNegationElimination
source share