Different threads do different tasks independently, each section is executed by one thread.
#pragma omp parallel { #pragma omp sections { #pragma omp section funcA (); #pragma omp section funcB (); #pragma omp section funcC (); } }