boost::async . Boost boost::result_of<T>. async :
template <class F>
boost::future<typename boost::result_of<typename boost::decay<F>::type()>::type>
async(F f);
/ , boost::result_of<T> :
decltype() .result_type typedef F result<T> F ( - , ).
(2), -, Boost , void .
, Boost decltype() ( -), Boost:
#define BOOST_RESULT_OF_USE_DECLTYPE
boost/config/user.hpp.