|
MiniOB 1
MiniOB is one mini database, helping developers to learn how database works.
|
Public 成员函数 | |
| NetServer (const ServerParam &input_server_param) | |
| int | serve () override |
| void | shutdown () override |
Public 成员函数 继承自 Server | |
| Server (const ServerParam &input_server_param) | |
| virtual int | serve ()=0 |
| virtual void | shutdown ()=0 |
Private 成员函数 | |
| void | accept (int fd) |
| 接收到新的连接时,调用此函数创建Communicator对象 更多... | |
| int | set_non_block (int fd) |
| 将socket描述符设置为非阻塞模式 更多... | |
| int | start () |
| int | start_tcp_server () |
| 启动TCP服务 | |
| int | start_unix_socket_server () |
| 启动Unix Socket服务 更多... | |
Private 属性 | |
| volatile bool | started_ = false |
| int | server_socket_ = -1 |
| 监听套接字,是一个描述符 | |
| CommunicatorFactory | communicator_factory_ |
| 通过这个对象创建新的Communicator对象 | |
| ThreadHandler * | thread_handler_ = nullptr |
额外继承的成员函数 | |
Protected 属性 继承自 Server | |
| ServerParam | server_param_ |
| 服务启动参数 | |
|
private |
接收到新的连接时,调用此函数创建Communicator对象
此函数作为libevent中监听套接字对应的回调函数
| fd | libevent回调函数传入的参数,即监听套接字 |
| ev | 本次触发的事件,通常是EV_READ |
|
overridevirtual |
实现了 Server.
|
private |
将socket描述符设置为非阻塞模式
| fd | 指定的描述符 |
|
overridevirtual |
实现了 Server.
|
private |
启动Unix Socket服务
如果不删除源文件,可能会导致bind失败