自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 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 389

原创 漫谈字节对齐

漫谈字节对齐什么是字节对齐为什么要字节对齐字节不对齐会遇到什么问题什么是字节对齐数据在内存地址是它长度的整数倍就叫字节对齐。比如一个整形在0x00000004(假设类型长度32)。不同的系统,数据类型的长度可能略有从差别。类型/模型ILP32LP32LP64LLP64char8888short16161616int32326432long32326432long long64646464pointer3

2020-12-15 00:53:06 154

原创 skynet源码解析--启动篇之三大模块

主要模块基本信息初始化优先启动的服务监视器模块基本信息初始化    初始化配置之后,就要开始启动skynet的主要模块。不过,启动模块之前要先初始化一些基本信息。生成harbor ID。这个ID用一个整型的高八位表示,也就是说master/harbor模式中,同一个集群最多只有256个harbor服务器。句柄池初始化。这个句柄池主要用来管理服保存务...

2019-08-22 01:24:58 551

原创 skynet源码解析--启动篇之配置

skynet的配置机制启动入口初始化环境变量启动入口    skynet启动的入口在文件skynet_main文件中的main函数,其实就是C程序的入口函数,然后显而易见的启动的传参argv,从中取出配置文件名赋值config_file 。如果不带参数启动,程序直接就退出了。 const char * config_file = NULL ; if ...

2019-08-16 15:07:54 640

原创 TCP/IP系列 -- ARP协议

TCP/IP系列 -- ARP协议地址解析协议ARP地址解析协议网络中,一台主机要将一个帧数据发送到另一台主机,仅仅知道这台主机的IP地址是不够的,还需要知道主机在网络的中的有效硬件地址,这个时候就需要用到地址解析协议ARP:提供一种将IP地址和各种网络中使用的硬件地址之间的映射。ARP仅用于IPv4和IPv6使用邻居发现协议。ARP...

2019-08-15 16:57:53 577

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除