【Muduo源码剖析笔记】Muduo Base库结构简介

【Muduo源码剖析笔记】Muduo Base库结构简介

作为第一次阅读源码的新手,感觉Muduo库的结构和代码都还是相对其他源码清晰和简单的。Base库包含了实现网络库所需的基础组件,但是自己第一次读的时候,在各个头文件的依赖关系中绕来绕去走了一些弯路,因此笔记以源代码中,头文件和实现文件为一个编译模块为单位梳理一下Base库的结构组成。

Base库的组件有多种类型,有的组件自己实现了单一功能,比如noncopyable模块可以为其他组件提供不可复制的tag提示。有的多个组件结合在一起实现了一个功能,比如用于管理线程相关的组件。笔记尝试将组件分为以下几类:

全局函数变量组件:定义了一些在不同命名空间下的函数和变量,供其他所有的组件调用。有时候这些函数变量也会出现在其他模块中。

功能组件:特别指提供与网络库没有直接相关的功能模块,更多的是与提供与编程角度相关的功能。

结构组件:提供与网络库相关的功能模块,可供其他模块调用,是整个网络库的组成部分之一。

个人阅读源码学习顺序可以从功能组件到结构组件,从基础到比较上层的功能顺序阅读。

各个组件的详细功能笔记后续再整理发出,这里只对模块的功能进行简介。

全局函数组件

CurrentThread

其并未定义新的类,定义了在CurrentThread命名空间里的线程相关的全局函数。这些函数主要供子线程管理自己的线程相关数据信息。

Types

定义了类型转换的两个函数和一个将一片内存置零的函数。

P
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值