unix- 网络编程 - epoll

2021/10/5 14:10:45

本文主要是介绍unix- 网络编程 - epoll,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

执行流程:

1、创建监听 socket,并绑定、监听;

2、调用 epoll_create() , 创建 epollfd 代理;

3、将想要监听的 listenfd,通过 epoll_ctl() , 挂载到 epollfd 上,让 epollfd 代理监听;

4、在一个 while 循环中,调用 epoll_wait(), 程序阻塞在这里,等待客户端连接到来;

5、当某个客户端连接到来,epoll_wait() 第一次返回的是接受连接的 listenfd, 调用 accept 函数接受连接,将   accpet 返回的 connfd,挂载到 epollfd 上,继续让代理监听 connfd 的读写事件;

6、当再次到达 5 时,如果是接受连接的 listenfd,那么继续 accept, 如果是读写事件,则进行 7, 接受或发送数据。

https://www.jianshu.com/p/1395fc8bddb9



这篇关于unix- 网络编程 - epoll的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程