Почему я должен использовать std :: async?

Я пытаюсь подробно изучить все возможности нового стандарта C ++ 11, используя std :: async и читая его определение, я заметил две вещи, по крайней мере, в Linux с gcc 4.8.1:

Это'называетсяасинхронной, но это получилось действительнопоследовательное поведениев основном в строке, где вы называетебудущее связано с вашей асинхронной функциейFooпрограмма блокируется до выполненияFoo Это'с завершено.это зависит от той же внешней библиотеки, что и другие, и от лучших неблокирующих решений, что означаетpthread, если вы хотите использоватьstd::async тебе нужно

на данный момент этоЕстественно для меня спросить, почему выбор std :: async даже для простого набора функторов? Это'это решение, которое неДаже если масштабировать вообще, чем больше в будущем вы звоните, тем менее отзывчивой будет ваша программа.

Я что-то пропустил ? Можете ли вы показать пример, который может быть выполнен асинхронно, без блокировки?

Ответы на вопрос(5)

Ваш ответ на вопрос