1 #include <sys/types.h> 2 #include <thread> 3 #include <unistd.h> 4 5 template <typename T> launcher(T func)6void launcher(T func) { 7 auto t1 = std::thread(func); 8 auto t2 = std::thread(func); 9 10 t1.join(); 11 t2.join(); 12 } 13 g()14void g() {} 15 f()16void f() { 17 fork(); 18 launcher<>(g); 19 } 20 main()21int main() { 22 launcher<>(f); 23 24 return 0; 25 } 26