IO多路復用

關注0人關注
我要報錯
  • select和epoll的前世今生

    了解IO多路復用應該對epoll和select不陌生吧。首先,select是有缺陷的,就是當事件發(fā)生(調用select)的時候,都需要在用戶態(tài)和內核態(tài)之間拷貝fd數組,要知道用戶態(tài)和內核態(tài)之間進行內存的拷貝是非常昂貴的,如果有上萬級別的并發(fā)網絡需要處理的時候,服務器根本處理不來。這時候,Linux內核的開發(fā)者應該算是簡單又粗暴的增加了一個內核調用,就是epoll了,有時候簡單粗暴的東西還是能提高效率的。先來看select接口: