Можно ли выполнять каждую итерацию цикла for/for_each параллельно? (C++11)

Я перебираю вектор структур и обрабатываю каждую структуру по отдельности.
Это выглядит примерно так:

for_each(begin(data),end(data),DoTask);
//assume "data" is std::vector  
//assume DoTask is a function that takes a DataT by reference

Код работает значительно медленно, потому что DoTask подключается к определенным веб-сайтам и анализирует HTML.
Что было бы лучшим способом ускорить это?
Моя цель — анализировать несколько DataT одновременно.
Я новичок в многопоточности, но std::asyncи std::futureвыглядят многообещающе.

10
задан ildjarn 14 April 2012 в 17:00
поделиться