reator网络编程
epoll被称为事件管理器,利用管理器去管理多个连接。
int clientfd=accept(listenfd,addr,sz);
clientfd ==-1 && erro==EWOLDBLOCK //表示全连接中连接为空
int connect(int sockfd, const struct sockaddr *addr,socklen_t addrlen);
error == EINPROGRESS //正在建立连接
error == EISCONN //连接建立成功
-
关闭读端 read = 0
-
关闭写端 write = -1 && errno =EPIPE
-
io函数像read只能检测一个fd对应的状态,可以检测具体的状态。
-
io多路复用可以检测多个fd对应的状态,只能检测可读,可写&#x