epoll fd 한개에 두 쓰레드가 동시에 epoll_wait()를 들어가면?
글쓴이: hanzo69 / 작성시간: 수, 2005/02/23 - 12:29오후
하나의 epoll fd에 두 쓰레드가 동시에 epoll_wait()를 들어가면 어떻게 되는지 궁금합니다.
직접 테스트 해보니 스택처럼 동작되더군요.
리스닝 쓰레드 A가 먼저 epoll_wait()를 들어간 후 리스닝 쓰레드 B가 epoll_wait()를 들어가게 테스트 프로그램을 준비했구요.
A쓰레드의 리스닝 tcp 포트에 클라이언트가 먼저 연결을 해도 반응이 없다가, B쓰레드의 리스닝 tcp포트에 클라이언트가 연결을 하니 그제서야 A쓰레드가 epoll fd에서 자신의 이벤트를 꺼내더군요.
전에 질문했던 대기중인 epoll fd에 대한 fd 추가는 이상없이 잘 되었습니다. 타 쓰레드에 의해 대기중인 epoll fd에 socket fd를 추가해도 문제없이 잘 돌아가더군요.
그럼...
Forums:
댓글 달기