[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/slacy/taskflow/master/examples/parallel_for.cpp [Back]  [Original]

// This program demonstrates loop-based parallelism using:
//   + STL-styled iterators
//   + plain integral indices

#include 
#include 

// Procedure: for_each
void for_each(int N) {

  tf::Executor executor;
  tf::Taskflow taskflow;

  std::vector range(N);
  std::iota(range.begin(), range.end(), 0);

  taskflow.for_each(range.begin(), range.end(), [&] (int i) {
    printf("for_each on container item: %d\n", i);
  });

  executor.run(taskflow).get();

  taskflow.dump(std::cout);
}

// Procedure: for_each_index
void for_each_index(int N) {

  tf::Executor executor;
  tf::Taskflow taskflow;

  // [0, N) with step size 2
  taskflow.for_each_index(0, N, 2, [] (int i) {
    printf("for_each_index on index: %d\n", i);
  });

  executor.run(taskflow).get();
  
  taskflow.dump(std::cout);
}

// ----------------------------------------------------------------------------

// Function: main
int main(int argc, char* argv[]) {

  if(argc != 2) {
    std::cerr 

Web Proxy Viewer  |  New URL  |  Original Page