有很多fd,很多事件,这些东西之间是什么关系?
socket()
socket() 返回一个sockfd,是这个socket的fd,是用来描述这个socket的。如果有写入,说明有新的连接请求。
accept()
accept()返回一个connfd,是一个连接的fd,是用来描述这个新的连接的。如果有写入,说明client给我们server发送了消息。如果要往fd里写,说明server给client发送消息。
accept只是从监听队列中取出连接,而不管连接处于什么状态。更不关心网络状态的变化。
connect()
返回一个连接的fd,用来描述这个连接。如果有写入,说明server给client发送了消息,如果往fd里写,说明client给server发消息