文档章节

Epoll 模式代码

invictus_lee
 invictus_lee
发布于 2014/10/21 14:18
字数 70
阅读 15
收藏 0
EventPolloer
{
	rhandlers;
	whandlers;
	register(fd,r,handler)
		{
		  
		  if(r)
		  {
			rhandlers[fd] = handler;
		  }else 
		  {
			whandlers[fd] = handler;
		  }
		}
	poller()
	{
		events [];
		fds = epoll_wait(events)
		for(i...)
		{
		   event[i]&EPOLLERR|EPOLLHUP?this->triggerError(fd)
		   event[i]&EPOLLIN? this->triggerRead(fd)
		   event[i]&EPOLLOUT? this->triggerWrite(fd)
		}
	}

	triggerRead(fd)
	{
		trigger(fd,rhandlers)
	}
	triggerWrite(fd)
	{
		trigger(fd,whandlers)
	}
	triggerError(fd)
	{
		if(!triggerRead(fd))
			triggerWrite(fd);
	}
	trigger(fd,handlers)
	{
		handlers[fd].handle();
	}
}


© 著作权归作者所有

下一篇: Epoll 相关
invictus_lee

invictus_lee

粉丝 1
博文 141
码字总数 21423
作品 2
徐汇
程序员
私信 提问
IO多路复用之epoll总结

1、基本知识   epoll是在2.6内核中提出的(mac没有),是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,...

Lennie002
2015/05/09
513
1
linux epoll 开发指南-【ffrpc源码解析】

摘要 关于epoll的问题很早就像写文章讲讲自己的看法,但是由于ffrpc一直没有完工,所以也就拖下来了。Epoll主要在服务器编程中使用,本文主要探讨服务器程序中epoll的使用技巧。Epoll一般和异...

知然
2013/12/17
0
0
select, poll, epoll I/O复用介绍

什么是I/O复用? 内核监视多个文件描述符(I/O文件句柄),一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知应用程序进行相应的读写操作。 I/O多路复用又被称为“事件驱动”(比如读写事...

xiaoxlm
2018/07/17
1
0
IO多路复用之epoll总结

IO多路复用之epoll总结 epoll是在2.6内核中提出的,是之前的select和poll的增强版本。相对于select和poll来说,epoll更加灵活,没有描述符限制。epoll使用一个文件描述符管理多个描述符,将用...

杰思
2017/08/03
0
0
Linux网络编程---I/O复用模型之epoll

epoll模型简介 epoll是Linux多路服用IO接口select/poll的加强版,e对应的英文单词就是enhancement,中文翻译为增强,加强,提高,充实的意思。所以epoll模型会显著提高程序在大量并发连接中只...

xtof
2018/12/27
7
0

没有更多内容

加载失败,请刷新页面

加载更多

线程池总结

1、主要参数说明 corepoolsize核心线程数、maxpoolsize最大线程数、keepalivetime闲置线程收回时间设置、workQueue工作队列(synchronizeQueue、LinkedBlockingQueue、ArrayListBlockingQueu...

青菜番茄h
3分钟前
2
0
Linux 下防火墙开启端口

1. 查看系统防火墙状态(running 表示开启运行状态) firewall-cmd --state 开启防火墙:systemctl start firewalld.service 关闭防火墙:systemctl stop firewalld.service 2. 开启端口外网访...

newdengs
5分钟前
2
0
一文看懂 K8s 日志系统设计和实践

上一篇中我们介绍了为什么需要一个日志系统、为什么云原生下的日志系统如此重要以及云原生下日志系统的建设难点,相信DevOps、SRE、运维等同学看了是深有体会的。本篇文章单刀直入,会直接跟...

阿里巴巴云原生
7分钟前
1
0
2019上海会议还有哪些召开,11月及12月的互联网技术类等大会?

2019年还剩下40多天的时候,上海有还有哪些会议召开呢?让我们跟随活动家官网的展示,看看今年还剩下哪些会议可以去参加! 上海2019年11月至12月会议列表清单 技术/互联网/通信/区块链 类 20...

活动家峰会
9分钟前
1
0
2019最新数据分析软件PASS&NVIVO视频教程合集

还在为数据繁杂而困扰吗? 还在为不知道怎么提炼有价值的数据而焦躁吗? 别担心,解决的办法来了!本文就为大家介绍两款数据分析的实用软件。当然介绍软件的同时,更有两款软件最全的视频教程...

yuyuyuyo
10分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部