| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 17ba66d commit fcbd9df
1 file changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,29 +1,33 @@ | |||
| 1 | 1 | // A simple example to capture the following task dependencies. | |
| 2 | 2 | // | |
| 3 | - // TaskA---->TaskB---->TaskD | ||
| 4 | - // TaskA---->TaskC---->TaskD | ||
| 5 | - | ||
| 3 | + // +---+ | ||
| 4 | + // +---->| B |-----+ | ||
| 5 | + // | +---+ | | ||
| 6 | + // +---+ +-v-+ | ||
| 7 | + // | A | | D | | ||
| 8 | + // +---+ +-^-+ | ||
| 9 | + // | +---+ | | ||
| 10 | + // +---->| C |-----+ | ||
| 11 | + // +---+ | ||
| 12 | + // | ||
| 6 | 13 | #include <taskflow/taskflow.hpp> // the only include you need | |
| 7 | 14 | ||
| 8 | 15 | int main(){ | |
| 9 | 16 | ||
| 10 | 17 | tf::Executor executor; | |
| 11 | 18 | tf::Taskflow taskflow("simple"); | |
| 12 | 19 | ||
| 13 | - auto A = taskflow.emplace([]() { std::cout << "TaskA\n"; }); | ||
| 14 | - auto B = taskflow.emplace([]() { std::cout << "TaskB\n"; }); | ||
| 15 | - auto C = taskflow.emplace([]() { std::cout << "TaskC\n"; }); | ||
| 16 | - auto D = taskflow.emplace([]() { std::cout << "TaskD\n"; }); | ||
| 20 | + auto [A, B, C, D] = taskflow.emplace( | ||
| 21 | + []() { std::cout << "TaskA\n"; }, | ||
| 22 | + []() { std::cout << "TaskB\n"; }, | ||
| 23 | + []() { std::cout << "TaskC\n"; }, | ||
| 24 | + []() { std::cout << "TaskD\n"; } | ||
| 25 | + ); | ||
| 17 | 26 | ||
| 18 | - A.precede(B); // B runs after A // +---+ | ||
| 19 | - A.precede(C); // C runs after A // +---->| B |-----+ | ||
| 20 | - B.precede(D); // D runs after B // | +---+ | | ||
| 21 | - C.precede(D); // D runs after C // +---+ +-v-+ | ||
| 22 | - // | A | | D | | ||
| 23 | - // +---+ +-^-+ | ||
| 24 | - executor.run(taskflow).wait(); // | +---+ | | ||
| 25 | - // +---->| C |-----+ | ||
| 26 | - // +---+ | ||
| 27 | + A.precede(B, C); // A runs before B and C | ||
| 28 | + D.succeed(B, C); // D runs after B and C | ||
| 29 | + | ||
| 30 | + executor.run(taskflow).wait(); | ||
| 27 | 31 | ||
| 28 | 32 | return 0; | |
| 29 | 33 | } | |
| Back | FazBrowse Home | New Git URL |
0 commit comments