如果读者看过 Go 标准库中 RPC 的源码,就知道 RPC 中将 Request 和 Response 结构通过一个带锁链表进行对象复用,构造一个对象池,以避免 GC 造成的性能代价。下面是概括性的源码:
[Read More]
并发网络服务程序设计
总结 C++ 多线程服务端编程模型
本文总结自《Linux 多线程服务端编程》6.6.2节。这节内容价值极高,打开了通往并发网络服务程序设计的大门。只有深入理解了下面列举的多种方案的优缺点,后续学习才能有的放矢。
[Read More]
Real World Pthread
Pthread 是标准库提供的 API,实际使用是 tough 的,下面看看实际上,该如何封装 Pthread。
[Read More]
Usage of Pthread
man pthread
Linux 内核只为线程的支持提供了底层原语,比如 clone() 系统调用。多线程库在用户空间。POSIX(Portable Operating System Interface,可移植操作系统接口)对线程库进行了标准化。开发人员称之为 POSIX 线程,简称为 Pthreads。
[Read More]
异步日志库 - Muduo 日志库源码解析
他山之石,可以攻玉
Muduo Logging 的代码由 Logging.h/cc, LogStream.h/cc , LogFile.h/cc , AsyncLogging.h/cc 这四对组成。把整体分为三个模块来考虑:日志生成、日志传递、日志打印。
[Read More]