[질문] 쓰레드가 각각의 UDP 소켓을 가지려면..
글쓴이: sisap / 작성시간: 월, 2003/09/29 - 7:27오후
안녕하세요?
요즘 쓰레드를 이용한 서버 프로그래밍을 공부하고 있는 초짜입니다. 기존 프로세스 포크를 하다가 쓰레드란 넘으로 바꿔볼라니 개념이 혼동스러운게 크으..-_-;;
거두 절미하고, 쓰레드가 각각 자신만의 UDP 소켓을 가지려면 어떻게 해야 되는 건지요? 하나의 시스템안에서 INET_UDP로 프로세스와 쓰레드간의 통신을 말하는건데요..
포크를 하는 경우는 자기 PID를 가지고 UDP소켓을 만들어 버리면 그만인데.. 쓰레드란 넘은 UDP소켓을 만든 file descript 값까지 공유를 해버리니까, UDP 소켓을 만들어도 포크되는 쓰레드란 쓰레드는 몽땅 이 하나의 UDP를 공유를 해서 써버리니까..
쓰레드가 UDP를 사용해서 어떤 프로세스로 메세지를 던진건 좋은데, 그 프로세스가 다시 UDP로 원래 메세지를 던진 특정 쓰레드로 어떻게 메세지를 리턴해 줄수 있는건지..
초짜입니다.-_-;; 기초적인 질문이긴 한데.. 영 감이 안잡혀서 그러니, 널리 이해하시고.. 답변 주시면 무지 감사드리겠슴다.
아아.. 어찌하오리까..
그럼.. 좋은 하루 되세요..
Forums:
간단하게 생각해서 쓰레드 갯수만큼 udp socket을 생성하면 되겠네요
간단하게 생각해서 쓰레드 갯수만큼 udp socket을 생성하면 되겠네요.
int socket[MAX_THREAD_NUM];
그리고 각각의 Thread에게 socket array의 index를 하나씩
할당해주면 되지요. 나머지는 process로 했을때와 동일.
댓글 달기