muduo网络库的接口

P131 muduo的头文件明确分为客户可见和客户不可见两类。以下是安装之后暴露的头文件和库文件。对于使用muduo库而言,只需要掌握5个关键类:Buffer.h、EventLoop.h、TcpClient.h、TcpServer.h、TcpConnection.h

1.Buffer.h

2.EventLoop.h

3. TcpClient.h

4.TcpServer.h

5.TcpConnection.h

TcpConnectionsPtr是一个共享指针

TcpConnection// 一个类

TcpConnection(EventLoop* loop, const string& name, int socked, const InetAddress& localAddr, const InetAddress& peerAddr);//


Q: “I/O 复用”是什么?

A:IO复用其实复用的不是IO连接,而是复用线程。

Q:Doug Schmidt提出的Reactor模式的主要思想是什么?

A:Doug Schmidt指出,其实网络编程中有很多是事务性(routine)的工作,可以提取为公用的框架或库,而用户只需要填上关键的业务逻辑代码,并将回调注册到框架中,就可以实现完整的网络服务,这正是Reactor模式的主要思想。

Reactor的意义在于将消息(IO事件)分发到用户提供的处理函数,并保持网络部分的通用代码不变,独立于用户的业务逻辑。

Q:陈硕推荐的C++多线程服务端编程模式是啥?

A:one loop per thread + thread pool

event loop 用作 non-blocking IO 和定时器

thread pool 用来做计算,具体可以是任务队列或生产者消费者队列

你可能感兴趣的:(muduo网络库的接口)