当前位置: 首页 > news >正文

wordpress网站登录农村网站建设调查报告

wordpress网站登录,农村网站建设调查报告,市场调研报告范文,网络工程师是青春饭吗关于go task 提供了另一种更简单的使用计算任务的方法,模仿go语言实现的go task。 使用go task来实计算任务无需定义输入与输出,所有数据通过函数参数传递。 与ThreadTask 区别 ThreadTask 是有模板,IN 和 OUT, ThreadTask 依赖…

关于go task

提供了另一种更简单的使用计算任务的方法,模仿go语言实现的go task。
使用go task来实计算任务无需定义输入与输出,所有数据通过函数参数传递。

与ThreadTask 区别

ThreadTask 是有模板,IN 和 OUT, ThreadTask 依赖 输入输出。

而 GoTask 不依赖,而是直接将函数打包成 go 这个callback,等待线程池消费。

1.示例程序

我们想异步的运行一个加法函数:void add(int a, int b, int& res);
并且我们还想在函数运行结束的时候打印出结果。于是可以这样实现:

#include <stdio.h>
#include <utility>
#include "workflow/WFTaskFactory.h"
#include "workflow/WFFacilities.h"void add(int a, int b, int& res)
{res = a + b;
}int main(void)
{WFFacilities::WaitGroup wait_group(1);int a = 1;int b = 1;int res;WFGoTask *task = WFTaskFactory::create_go_task("test", add, a, b, std::ref(res));task->set_callback([&](WFGoTask *task) {printf("%d + %d = %d\n", a, b, res);wait_group.done();});task->start();wait_group.wait();return 0;
}

2. 继承顺序

在这里插入图片描述

3.源码分析

template<class FUNC, class... ARGS>
inline WFGoTask *WFTaskFactory::create_go_task(const std::string& queue_name,FUNC&& func, ARGS&&... args)
{auto&& tmp = std::bind(std::forward<FUNC>(func),std::forward<ARGS>(args)...);return new __WFGoTask(WFGlobal::get_exec_queue(queue_name),WFGlobal::get_compute_executor(),std::move(tmp));
}
class __WFGoTask : public WFGoTask
{
protected:virtual void execute(){this->go();}protected:std::function<void ()> go;public:__WFGoTask(ExecQueue *queue, Executor *executor,std::function<void ()>&& func) :WFGoTask(queue, executor),go(std::move(func)){}
};

其他和ThreadTask一致,还是通过线程池去执行execute(),从而进行用户函数的执行

4.参考链接

https://github.com/chanchann/workflow_annotation/blob/main/src_analysis/12_go_task.md
https://github.com/sogou/workflow/blob/master/docs/about-go-task.md

http://www.yayakq.cn/news/414330/

相关文章:

  • 成品网站nike源码免费网络推广网站程序
  • wordpress 比特币行情青岛seo排名收费
  • 网页游戏开发技术有哪些做seo用什么网站系统
  • 广东省建设工程执业中心网站新网域名备案
  • 外贸网站建设科技利用ps怎么做网站首页
  • 网站上线怎么做香蜜湖附近网站建设
  • 做网站收费 知乎建设网站公司网站
  • 网站分为哪些类型飞翔时代网站建设
  • 手机网站建设深圳青岛网站建设好不好
  • 深圳市龙岗区做网站的公司视频服务器搭建
  • 网站建设基础书本湖南建筑工程集团
  • 平凉市崆峒区建设局网站站长工具 站长之家
  • 北京网站制作费用做服装网站宣传
  • 如何查看网站空间site之后网站在首页说明说明
  • 淘宝客 网站备案知名网络公司有哪些
  • 快速设计网站线上课程如何推广
  • 沈阳装修公司网站建设编程软件wordpress
  • 兰州网站建设索q479185700百度云链接
  • 厦门免费做网站公司网站建设合同需要交印花税
  • 如何查询网站被百度收录情况百度网站的优点
  • 专业电子网站建设腾讯企业邮箱账号
  • 网站 目录结构做网站约需要多少钱
  • 石家庄网站建设推广电话横岗网站设计
  • 湛江市手机网站建设企业网站后台组成
  • php用什么工具做网站wordpress 控件
  • 昆明行业网站建设取消wordpress还原
  • 常州公司网站建设多少钱seo和sem是干什么的
  • 网站网络营销怎么做韩国男女做游戏视频网站
  • 做小程序的公司seo三人行网站
  • 网站程序开发要点上海建设工程交易服务中心