두개의 thread에서 select를 각각 호출할 수 있나요?
글쓴이: theone3 / 작성시간: 목, 2005/10/27 - 7:27오후
안녕하세요? 질문입니다.
질문의 요지는
"두 개의 thread가 select를 각각 호출할 수 있는가"하는 것입니다.
현재 하려고 하는 일은 접속요청이 빈번한 시스템을 만드는 것입니다.
그래서 listen하는 socket만을 select하는 thread를 하나 만들고,
accept된 socket들을 select하는 별도의 쓰레드를 만들려고 합니다.
지금까지는 거의 하나의 thread 혹은 while문(main thread겠죠)에서
listen하는 socket과 accept된 socket을 하나의 FD_SET에서 select하는 방법만을 써왔는데,
제가 위에 기술한 방식이 구현가능한지, 성능상의 문제나, 다른 문제는 없는지 알고 싶습니다.
Forums:
당근입니다.
당근입니다.
여기서 문제가 되는 것이 있는데 두 쓰레드가 같은 소켓 번호를 selec
여기서 문제가 되는 것이 있는데 두 쓰레드가 같은 소켓 번호를 select 하거나 accept 할 때에 소켓이 반응하는 상태가 되면 두개의 쓰레드가 동시에 깨어나는 문제가 있습니다. 이것에 대한 자세한 사항은 UNP 2nd Ed. 후반부에 있으니 참고하시기 바랍니다.
답변 감사합니다.
답변 감사드립니다.
같은 소켓을 다른 쓰레드가 select 하는 경우가 없게 만들려고 합니다.
UNP2를 끝까지 읽어보지 않은 것도 후회되는군요..
공부 좀 해야겠습니다. ^^
댓글 달기