battlesvr结构
BattleSvrMain.cpp
main()入口 ,调用框架Framework/MainImp.cpp标准的初始化, 循环处理, 结束退出三步骤
/MainImp.cpp
1. 初始化: init_app
a: CAppCtx* pAppCtx 基本配置
b: 启动格式:
fprintf( stderr, "example usage:\n\t%s"
" --id=busid --bus-key=xxx --channel-size=xxx --business-id=xxx"
" --conf-file=../conf/xxx_conf.xml --routerconf-file=librouter_zk_conf.xml --daemon start\n", servname );
c: 创建 CBattleSvrApp实例, 并且传给skynet的 gGlobalCtrlBlock.pCurrentApp
d: 检测pidfile, 创建pidfile, 注册atexit( remove_pidfile );
e: 配置log文件名
f: 随机种子初始化
g: 调用CBattleSvrApp的init初始化
2. 循环: run_app
a: while循环, ,循环条件pAppCtx->m_is_shutdown
b: 循环dothing:pApp->Tick() tick循环,每帧调用一次
c: 循环dothing2: pApp->Proc() 主要是HandleENet和HandleRouter,两类消息
d: 如果dothing2没有什么事情,则sleep,平衡帧速 pApp->Idle()
3. 退出: fini_app
a: pApp的退出,有标准接口 pApp->Fini(); pApp->Stop();
b: fini_bus()
c: free( pAppCtx )
这是上层的基本框架和流程
转载于:https://www.cnblogs.com/sophirine/p/4936170.html
battlesvr结构相关推荐
- 什么是LinkedList?什么时候使用它呢?Java LinkedList结构、用法及源码解析
前言:我们学习java时都知道ArrayList实现List接口,LinkedList也实现List接口,但我们平时用的时候LinkedList却很少被用到.那么,LinkedList什么时候该用到呢 ...
- 2022-2028年中国环氧结构胶行业市场研究及投资前景预测报告
[报告类型]产业研究 [报告价格]¥4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国环氧结构胶行业市场行业相关概述.中国环 ...
- Go 学习笔记(84)— Go 项目目录结构
1. 目录规范 一个好的目录结构至少要满足以下几个要求. 命名清晰:目录命名要清晰.简洁,不要太长,也不要太短,目录名要能清晰地表达出该目录实现的功能,并且目录名最好用单数.一方面是因为单数足以说明这 ...
- Gin 框架学习笔记(02)— 参数自动绑定到结构体
参数绑定模型可以将请求体自动绑定到结构体中,目前支持绑定的请求类型有 JSON .XML .YAML 和标准表单 form数据 foo=bar&boo=baz 等.换句话说,只要定义好结构体, ...
- etcd 笔记(06)— Client 结构定义、客户端(初始化、KV存储Get、Put、事务 Txn、压缩 Compact、Watch、Lease
1. Client 定义 Client 定义如下: type Client struct {ClusterKVLeaseWatcherAuthMaintenance// 认证的用户名Username ...
- etcd 笔记(05)— etcd 代码结构、各模块功能、整体架构、各模块之间的交互、请求和应答流程
1. etcd 项目结构和功能 etcd 项目代码的目录结构如下: $ tree ├── auth ├── build ├── client ├── clientv3 ├── contrib ├── ...
- Go 知识点(04)— 结构体字段转 json格式 tag 标签的作用
我们知道在 Go 语言中无论是变量.常量还是函数,对于首字母大小写有不同的处理. 首字母大写,标志着该字段或者函数是能导出的,也就是可以被其它包所能访问的: 首字母小写,标志着该字段是私有的,只能在本 ...
- 2022-2028年中国聚氨酯结构胶行业发展动态分析及投资机会预测报告
[报告类型]产业研究 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了聚氨酯结构胶行业相关概述.中国聚氨酯结构胶行业运行环境.分析了中国聚 ...
- OpenCV 笔记(06)— Mat 结构、像素值存储方法、创建 Mat 对象各种方法、Mat 对象的运算
数字图像中的每个点都称为像素(对于图像元素),并且每个像素可以存储一个或多个值,这取决于它是否是仅存储一个值的黑白图像(也称为二进制图像,比如只存储0或1),还是存储两个值的灰度图像,或者是存储三个值 ...
最新文章
- 如何在同一台电脑上多个账户同时登陆MSN
- DevOps 的发展史
- 架构师之路 — 软件架构 — 软件版本定义
- linux shell 里面执行python 程序_Linux下编写脚本Shell和Python的区别?
- 全球及中国碳化硅 (SiC) 肖特基二极管行业竞争潜力与供应规划研究报告2022版
- TCC分布式实现原理及分布式应用如何保证高可用
- 二分法查找的JAVA程序
- DHCP+TFTP+PXE自动网络引导安装Linux操作系统
- linux 所有文件大小排序,linux 根据文件大小排序
- 单片机ISP烧录原理
- 扫码枪测试软件,有线条码扫码枪的测试方法
- 模拟电路,包括低频(模拟电子技术基础)和高频(高频电子线路)
- 解决Selenium2Library 导入报错问题
- 不想下载那么多音乐软件?全网音乐在线听和下载
- API文档自动生成工具
- 开源构建知识库体系的工具——Trilium使用方法
- wps 表格 自动生成序号
- 物理信息融合系统CPS---数据流(SDF/DDF)
- 加拿大量子计算机原理,量子计算机是基于什么原理而制造出来的?
- linux环境下使用virtualbox安装ghost系统
热门文章
- Math工具类常用API使用案例
- Postman中几个body请求格式区别及使用说明
- Java异常中受检异常非受检异常与RuntimeException异常关系
- QML做图片倒影效果(控件倒影)
- 从接触FPGA开始...
- Ubuntu关闭anaconda自动进入base虚拟环境
- Java方法的引用(打造Lambda表达式的升级版)
- sftp服务器同步文件到本地,服务器之间通过sftp的方式同步文件,并入库到本地数据的表中...
- 得到app文稿导出_再见了扫描仪!微信打开这个功能,一键将纸质文稿扫描成电子档...
- easyui框架前后端交互_easyui前后端分离