提交 87842bce 编写于 作者: xiaonuo911teamo's avatar xiaonuo911teamo

更新README.md

上级 eab5c3e1
# zcmf-zero_coupling_module_framework
这是一个零耦合的模块工程架构。模块间的交互操作以string作为key,通过静态存储区进行交互,从而达到所有模块均不互相依赖的目的。该架构适用于多任务并行执行,并且多有交互的情景
这是一个零耦合的模块工程架构。模块间的交互操作通过查询在静态存储区存放的注册函数的地址,传入相应参数,完成调用交互,从而达到所有模块均不互相依赖的目的。该架构适用于多任务并行执行,并且多有交互的情景,多用于C++后台服务和界面程序的底层架构
## 框架背景以及原理
......@@ -22,11 +22,13 @@
## 框架现有的功能
1. 服务机制
服务机制和消息机制在messager中实现, 具体介绍参见[点我](code/src/corelib/include/message/README.md)
服务机制和消息机制在messager中实现, [详细介绍](code/src/corelib/include/message/README.md)
2. 消息机制
同上.
3. 模块线程管理基类
4. 统一的log接口
3. 模块线程管理
每个模块使用独立线程,模块运行模式提供2+1的方案。触发式调度模式和定时循环式处理模式+任务池模式。[详细介绍](code/src/corelib/include/pipe/README.md)
4. 标准化log输出
提供六种等级的log输出模式,适用于不同场景,依次为DEBUG/INFO/WARNING/ERROR/FATAL/DIRECT。[详细介绍](code/src/corelib/include/log/README.md)
5. 进程CPU 内存实时记录
6. 时序ulog存储
7. 日志落盘
......@@ -51,6 +53,19 @@
1. 尽量不要自启线程, 框架内包含对线程的调度部分, 可以满足大部分需求.
## 简单使用步骤
> 适用平台:linux
> 目标:通过server_proc模块,记录进程的CPU和内存信息
1. `git clone` 将代码迁移到本地
2. `./build.sh -nd` 下载linux-x86_64版本依赖
3. `./build.sh -j2 -nbi` 编译,并产出到output目录
4. `cd output/linux-x86_64` 进入产出目录
5. `./run.sh -r test` 执行测试运行命令,等待10秒左右,**Ctrl+C** 退出。
6. `vim log/proc/*.proc` 查看生成的cpu信息和内存信息
## 特殊情况使用指导
### 1.单个模块需要阻塞调用
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册