摘要: 前幾天回答一個(gè)問題,是關(guān)于我們項(xiàng)目中使用的epoll模式的,因?yàn)橛洸淮笄辶耍杏X應(yīng)該使用的就是epoll的高速模式,也就是ET(edge-trigger)模式。這兩天閑暇的時(shí)候,打開代碼又看了一下,在epoll事件注冊時(shí)并未標(biāo)記ET模式,看來實(shí)際使用的是epoll默認(rèn)的LT(level-trigger )模式,為什么呢?使用LT意味著 只要 fd 處于 readable/writable 狀態(tài),每次 epoll_wait 時(shí)都會返回該 fd,系統(tǒng)開銷不說,自己處理時(shí)每次都要把這些fd輪詢一遍,如果fd很多的話,不管這些fd有沒有事件發(fā)生,epoll_wait 都會觸發(fā)這些fd的輪詢判斷。
閱讀全文