发布时间:2014-07-16 14:27:58
0.等待队列在Linux内核中等待队列有很多用途,可用于中断处理、进程同步及定时。我们在这里只说,进程经常必须等待某些事件的发生。等待队列实现了在事件上的条件等待: 希望等待特定事件的进程把自己放进合适的等待队列,并放弃控制全。因此,等待队列表示一组睡眠的进程,当某一条件为真时,由内核唤醒它们.........【阅读全文】
发布时间:2014-07-16 14:27:48
Epoll实现分析——作者:lvyilong316通过上一章分析,poll运行效率的两个瓶颈已经找出,现在的问题是怎么改进。首先,如果要监听1000个fd,每次poll都要把1000个fd 拷入内核,太不科学了,内核干嘛不自己保存已经拷入的fd呢?答对了,epoll就是自己保存拷入的fd,它的API就已经说明了这一点——不是 epoll_.........【阅读全文】
发布时间:2014-07-16 14:24:05
彻底学会使用epoll(六)——关于ET的若干问题总结——lvyilong3166.1 ET模式为什么要设置在非阻塞模式下工作 因为ET模式下的读写需要一直读或写直到出错(对于读,当读到的实际字节数小于请求字节数时就可以停止),而如果你的文件描述符如果不是非阻塞的,那这个一直读或一直写.........【阅读全文】
发布时间:2014-07-16 14:23:58
彻底学会epoll(五)—— ET模式下的注意事项——lvyilong3165.1 ET模式下的读写 经过前面几节分析,我们可以知道,当epoll工作在ET模式下时,对于读操作,如果read一次没有读尽buffer中的数据,那么下次将得不到读就绪的通知,造成buffer中已有的数据无机会读出,除非有新的.........【阅读全文】