더북(TheBook)

3.8 epoll

 

 

epoll은 소켓이 I/O 가능 상태가 되면 이를 감지해서 사용자에게 알림을 해 주는 역할을 합니다. 이때 어떤 소켓이 I/O 가능 상태인지 알려 줍니다.

p175

▲ 그림 3-18 소켓 2에서 I/O 가능 이벤트가 발생

 

그림 3-18의 경우 소켓 2가 I/O 가능이 되는 순간 epoll은 이 상황을 epoll 안에 내장된 큐에 푸시합니다. 여러분은 epoll에서 이러한 이벤트(사건) 정보를 팝(pop)할 수 있습니다. 이렇게 해서 어떤 소켓이 I/O 가능인지 알 수 있습니다. 따라서 소켓이 1만 개라고 하더라도 이 중에서 I/O 가능이 된 것들만 epoll을 이용해서 바로 얻을 수 있습니다. 즉, 루프를 1만 번 돌지 않아도 됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.