![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
skynet
文章平均质量分 81
Leoh_LL
这个作者很懒,什么都没留下…
展开
-
【Skynet】Skynet项目-球球作战实例
一、拓扑结构二、目录结构原创 2021-12-21 01:52:36 · 1937 阅读 · 3 评论 -
【Skynet】Skynet入门实例
一、下载和编辑CentOS7.7安装相应软件:yum install git #git,用于下载源码yum install gcc #用于编译源码yun install autoconf #用于编译源码yum install readline-devel #编译Lua会用到下载skynet源码:git clone https://github.com/cloudwu/skynet.git编译:cd skynet #进入skynet目录make linux #编译执行指令“m原创 2021-12-21 01:52:50 · 3343 阅读 · 2 评论 -
【skynet】skynet入口解析
skynet源码解读一、skynet网络线程入口网络线程入口函数如下,调用函数socket_server_poll创建多路复用IO监听socket IO事件。//skynet_start.cstatic void *thread_socket(void *p) { struct monitor * m = p; skynet_initthread(THREAD_SOCKET); for (;;) { int r = skynet_socket_poll(); if (r==0)原创 2022-08-28 16:52:48 · 379 阅读 · 0 评论 -
【skynet】skynet消息处理与协程
首先看skynet.start函数,通过c.callback设置了回调函数skynet.dispatch_message。然后看skynet.dispatch_message函数,第一句pcall调用了函数raw_dispatch_message函数。然后看raw_dispatch_message函数,注意到local co = co_create(f)创建了一个协程。local function raw_dispatch_message(prototype, msg, sz, session,原创 2022-08-28 16:55:36 · 1009 阅读 · 1 评论 -
【skynet】skynet阻塞接口的原理剖析
skynet阻塞接口的原理剖析:假设在lua代码中调用如下接口:local res, err = socket.open("127.0.0.1", 6379)if not res then print(err)else print("hello")end即调用到C代码的driver.open,然后调用local function connect的suspend函数挂起当前协程,等待connect返回信息。local function connect(id, func) local ne原创 2022-08-28 16:55:46 · 341 阅读 · 0 评论