Задать вопрос
@Blunker

Как сделать параллельное выполнение нескольких функций?

Имеется вектор vector, нужно его параллельно отсортировать и привести к нижнему регистру.
Даже не знаю с чего подступиться:(
  • Вопрос задан
  • 2149 просмотров
Подписаться 2 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 4
AxisPod
@AxisPod
C++11: std::async, std::thread,
VS (Parallel Patterns Library): concurency::parallel_for да и куча другого https://msdn.microsoft.com/en-us/library/dd492819.aspx
posix: библиотека pthread
а так же boost::thread, tbb ( https://www.threadingbuildingblocks.org/ )

Да и вообще куча всяких решений.
Ответ написан
Комментировать
@vilgeforce
Раздолбай и программист
Если винда - CreateThread в помощь.
Можно еще openCL/CUDA заюзать.
Ответ написан
@Dvvarreyn
Один поток сортирует другой преобразует? Или параллельная сортировка, и параллельное преобразование?
Если второе, то я начал бы с того, что описал как я представляю параллельное решение в этом случае, потому как вариантов много. Если первое, то я начал бы с примера

int main(){
  std::vector<char> a = {'B', 'a'};
  std::thread t1(&mySort, &a);
  std::thread t2(&myToLower, &a);
  t1.join();
  t2.join();
}
Ответ написан
Комментировать
@RafForce
на мой взгляд и openMP тут может помочь
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы