select + thread
글쓴이: exclamation / 작성시간: 월, 2003/10/06 - 9:13오후
네트웤 프로그램이 익숙지 않아서 이렇게 질문 드립니다.
설계 단계에 있는데, 어줍짢은 실력으로 설계해서 나중에 고생할 거 같아 여쭤봅니다.
서버단에서는 클라이언트의 요청을 받아, DB와 중간 단계에서 MANAGING을 주로 합니다.
클라이언트에서는 원하는 데이터가 있을 때마다, 서버로의 연결을 맺어 결과를 얻은 후에 연결을 끊는 방법을 생각하고 있습니다.
서버에서는 accept 후에 스레드로 클라이언트가 요청하는 데이터를 처리하도록 합니다.
클라이언트에서 작업 요청이 많을 것으로 예상되며, 서버에서는 데이터의 처리 시간이 제각각 다릅니다.
그래서 스레드로 빨리 처리된 데이터 부터 클라이언트로 전달하려 하구요.
여기에서 궁금한게, 스레드 안에서 recv or send 부분이 다른 스레드의 recv or send와 블로킹 되는지, 각각의 connection에 대하여 thread 처리를 하는데, select문을 사용하여야 하는지 알고 싶습니다.
솔직히 말씀드려서, 다중 입출력 관련해서는 select문을 사용하는게 이해가 가겠는데, 이런 상황에서도 select문을 쓰는 이유가 있는지 모르겠습니다.
긴 글 읽어 주셔서 감사합니다.
Forums:
[quote]스레드 안에서 recv or send 부분이 다른 스레드의
의미가(?) .. 다른쓰레드의 recv,send끼리는 블럭과 관계가 없습니다.
1:1형태로 만든다면 select를 사용안해도 될것 같군요.
그나저나 백수 언제 탈출하냐... ㅡㅡ; 배고파라.
댓글 달기