Epoll模型代码
来源:互联网 发布:4g初级网络优化工程师 编辑:程序博客网 时间:2024/06/08 12:00
- static int s_epfd;//epoll描述字
- {//初始化epoll
- struct epoll_event ev;
- //设置epoll
- s_epfd = epoll_create(65535);
- {//这个过程可以循环以便加入多个LISTEN套接字进入epoll事件集合
- //<a href="http://www.doserver.net/tag.php?tag=%E6%9C%8D%E5%8A%A1%E5%99%A8" target="_blank" title="http://www.doserver.net/tag.php?tag=%E6%9C%8D%E5%8A%A1%E5%99%A8" class="mykeyword">服务器</a>监听创建
- rc = listen();//listen参数这里省略
- //加入epoll事件集合
- ev.events = EPOLLIN;
- ev.data.fd = rc;
- if (epoll_ctl(s_epfd, EPOLL_CTL_ADD, rc, &ev) < 0) {
- fprintf(stderr, "epoll set insertion error: fd=%d", rc);
- return(-1);
- }
- }
- }
- {//epoll事件处理
- int i, nfds, sock_new;
- struct epoll_event events[16384];
- for( ; ; ) {
- //等待epoll事件
- nfds = epoll_wait(s_epfd, events, 16384, -1);
- //处理epoll事件
- for(i = 0; i < nfds; i++) {
- //events[i].data.fd是epoll事件中弹出的套接字
- //接收连接
- sock_new = accept(events[i].data.fd);//accept其它参数这里省略了
- if(0 > sock_new) {
- fprintf(stderr, "接收客户端连接失败\n");
- continue;
- }
- }
- }
- }
- Epoll模型代码
- 最简单的Epoll模型代码
- EPOLL模型
- Epoll模型
- epoll模型
- epoll模型
- epoll模型
- Epoll模型
- epoll模型
- Epoll模型
- epoll 模型
- epoll模型
- Epoll模型
- Epoll模型
- epoll模型
- Epoll模型
- epoll 模型
- EPoll模型
- C# 异常处理
- struts2中EL表达式
- 为程序员量身定制的12个目标
- 排队系统
- Source Insight是一个面向项目开发的程序编辑器和代码浏览器
- Epoll模型代码
- 调试法:跟踪窗口消息的来龙去脉
- 16进制字符串转byte数组
- ARM-Linux驱动--MTD驱动分析(二)
- Java的对象序列化以及文件IO处理
- cramfs根文件系统的建立过程
- 分区表说明
- Latex点滴
- kmalloc函数及相关的malloc、vmalloc、get_free_pages