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

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему я должен использовать std :: async?

Сообщение Anonymous »

Я пытаюсь изучить все варианты нового стандарта C ++ 11 в глубине, используя при этом STD :: Async и читая его определение, я заметил 2 вещи, по крайней мере, под Linux с GCC 4.8 .1 :
  • Это называется async , но он получил действительно «последовательное поведение», в основном в ряду где вы называете будущее , связанное с вашей асинхронной функцией foo , программа блокирует до тех пор, пока не будет выполнено foo .
  • Это зависит от той же самой внешней библиотеки, что и другие, и лучшие не блокирующие решения, что означает pthread , если вы хотите использовать std :: async , вам нужно pthread .
На данный момент это естественно, чтобы я спрашивал, почему выбирая std :: async даже простым набором функционирования ? Это решение, которое даже вообще не масштабируется, чем больше будущего вы называете, тем менее отзывчивой будет ваша программа.
Я что -то упускаю? Можете ли вы показать пример, которому можно было бы выполнить в асинхронном, не блокирующем, способ?

Подробнее здесь: https://stackoverflow.com/questions/179 ... e-stdasync
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»