文章分类 -  skynet

摘要:skynet版本:v1.4.0 (2020-11-16) 最近在做武侠mmo的游戏。因为武侠战场有一个tick在计算状态,然而在tick里的逻辑出现了问题,具体原因是一个怪物的ai返回错误码值有问题,而外层tick又没有捕捉到这个错误码,所以出现了死循环,导致一直在执行ai,创建了一堆table,最 阅读全文
posted @ 2023-04-03 20:18 小乐虎 阅读(169) 评论(0) 推荐(0) 编辑
摘要:在使用skynet的时候,同一个service,在处理业务时可能出现这种需求: 1 逻辑A首先在处理,在调用call的时候挂起了当前协程,这时候service收到了退出的消息,需要执行落地操作,这时候A是没有处理完的,这样的结果并不是我们想要的,我们想要的顺序应该是A执行完后,才会执行落地操作并且退 阅读全文
posted @ 2021-12-22 20:36 小乐虎 阅读(354) 评论(0) 推荐(0) 编辑
摘要:一个网络框架,需要能够处理 网络消息,系统信号,定时任务 等事件,接下来我们一起研究skynet的定时任务是如何实现的。 传统的定时任务,比较高效的是时间轮算法,时间堆算法(最小堆),skynet采用了时间轮的算法去处理。 skynet_timer.c在框架中主要作用在于管理skyent自身的时间戳 阅读全文
posted @ 2021-12-20 20:41 小乐虎 阅读(265) 评论(0) 推荐(0) 编辑
摘要:skynet本身解决的核心问题是充分利用同一台机器的多核的处理能力。云风在描述集群时,强调说skynet只提供了构建集群的组件。那是因为不是所有项目遇到的问题都能够用统一的解决方案的。还提出任何企图抹平服务运行位置差异的设计都需要慎重考虑,很可能存在设计问题,因为集群协作不与单机多服务工作,集群中可 阅读全文
posted @ 2021-12-10 19:04 小乐虎 阅读(2342) 评论(0) 推荐(0) 编辑
摘要:skynet本身解决的核心问题是充分利用同一台机器的多核的处理能力。云风在描述集群时,强调说skynet只提供了构建集群的组件。那是因为不是所有项目遇到的问题都能够用统一的解决方案的。还提出任何企图抹平服务运行位置差异的设计都需要慎重考虑,很可能存在设计问题,因为集群协作不与单机多服务工作,集群中可 阅读全文
posted @ 2021-12-07 19:37 小乐虎 阅读(589) 评论(0) 推荐(0) 编辑
摘要:skynet 版本信息:1.5.0 skynet是如何处理socket网络信息的? skynet框架总共有4种线程: 1) worker线程:处理消息逻辑 2) monitor线程:监控服务是否死循环卡死 3) timer线程:处理定时逻辑 4) socket线程:处理网络通讯 skynet所有的网 阅读全文
posted @ 2021-11-19 19:20 小乐虎 阅读(586) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示