32 #ifndef VSMC_THREAD_PARALLE_FOR_HPP
33 #define VSMC_THREAD_PARALLE_FOR_HPP
52 template <
typename Range,
typename WorkType>
56 std::vector<ThreadGuard<std::thread>> tg;
57 tg.reserve(range_vec.size());
59 for (std::size_t i = 0; i != range_vec.size(); ++i) {
61 std::forward<WorkType>(work), range_vec[i])));
68 #endif // VSMC_THREAD_PARALLE_FOR_HPP
Strictly scope-based thread ownership wrapper.
static ThreadNum & instance()
void parallel_for(const Range &range, WorkType &&work)
Parallel for using std::thread.