同步操作将从 Gitee 极速下载/cpp-taskflow 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include <taskflow/taskflow.hpp>int spawn(int n, tf::Subflow& sbf) {if (n < 2) return n;int res1, res2;// compute f(n-1)sbf.emplace([&res1, n] (tf::Subflow& sbf) { res1 = spawn(n - 1, sbf); } ).name(std::to_string(n-1));// compute f(n-2)sbf.emplace([&res2, n] (tf::Subflow& sbf) { res2 = spawn(n - 2, sbf); } ).name(std::to_string(n-2));sbf.join();return res1 + res2;}int main(int argc, char* argv[]) {if(argc != 2) {std::cerr << "usage: ./fibonacci N\n";std::exit(EXIT_FAILURE);}int N = std::atoi(argv[1]);if(N < 0) {throw std::runtime_error("N must be non-negative");}int res; // resulttf::Executor executor;tf::Taskflow taskflow("fibonacci");taskflow.emplace([&res, N] (tf::Subflow& sbf) {res = spawn(N, sbf);}).name(std::to_string(N));executor.run(taskflow).wait();//taskflow.dump(std::cout);std::cout << "Fib[" << N << "]: " << res << std::endl;return 0;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。