概述
一:一个更正,一个注意
更正:kqueue
注意:即将进入最重要,最核心的内容讲解;
戒骄戒躁,代码精华。简单,容易理解;大家要认真学习老师给出来的代码;
二:配置文件的修改
增加worker_connections项
三:epoll函数实战
epoll_create(),epoll_ctl(),epoll_wait();系统提供的函数调用
(3.1)ngx_epoll_init函数内容
epoll_create():创建一个epoll对象,创建了一个红黑树,还创建了一个双向链表;
连接池: 数组,元素数量就是worker_connections【1024】,每个数组元素类型为 ngx_connection_t【结构】; ---结构数组;
为什么要引入这个数组: 2个监听套接字, 用户连入进来,每个用户多出来一个套接字;
把 套接字数字跟一块内存捆绑,达到的效果就是将来我通过这个套接字,就能够把这块内存拿出来;
ngx_get_connection()重要函数:从连接池中找空闲连接;
a)epoll_create() *****************
b)连接池(找空闲连接)
c)ngx_epoll_add_event() ************
epoll_ctl();
d)ev.data.ptr = (void *)( (uintptr_t)c | c-
最后
以上就是标致向日葵为你收集整理的5-06 通讯代码精粹之epoll函数实战1的全部内容,希望文章能够帮你解决5-06 通讯代码精粹之epoll函数实战1所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复