skynet源码解析
文章平均质量分 51
这个世界哪有什么赛跑
不劳而获,痴心妄想是个天才
展开
-
skynet源码解析--lua服务的启动
skynet是如何实现c和lua的控制权转换lua服务的起源地启动的第一个lua服务启动一个服务前面已经讲过c底层代码是如果完成消息驱动的,这里主要描述c和lua是进行交互和转移控制权的。lua服务的起源地skynet所有的lua服务都是有service_snlua.c的实现的库是加载的。/*skynet_context_new中加载snlua的库时会调用init*/int snlua_init(struct snlua *l, struct skynet_context *ctx, const原创 2021-08-28 19:05:37 · 284 阅读 · 0 评论 -
skynet源码解析--启动篇之配置
skynet的配置机制启动入口初始化环境变量启动入口 skynet启动的入口在文件skynet_main文件中的main函数,其实就是C程序的入口函数,然后显而易见的启动的传参argv,从中取出配置文件名赋值config_file 。如果不带参数启动,程序直接就退出了。 const char * config_file = NULL ; if ...原创 2019-08-16 15:07:54 · 475 阅读 · 0 评论 -
skynet源码解析--启动篇之三大模块
主要模块基本信息初始化优先启动的服务监视器模块基本信息初始化 初始化配置之后,就要开始启动skynet的主要模块。不过,启动模块之前要先初始化一些基本信息。生成harbor ID。这个ID用一个整型的高八位表示,也就是说master/harbor模式中,同一个集群最多只有256个harbor服务器。句柄池初始化。这个句柄池主要用来管理服保存务...原创 2019-08-22 01:24:58 · 359 阅读 · 0 评论