OpenMP
#include <iostream>
int main(int argc, char* argv[]) {
#pragma omp parallel for
for (size_t i = 0; i < 1000000; ++i)
{
std::cout << i << std::endl;
}
}
Конкретно этот пример работает медленнее на нескольких потоках из-за синхронизации ввода-вывода. Для эффективного использования результат нужно накапливать в памяти, затем выводить.