[Socket 프로그래밍] 12. IO 멀티플렉싱(Multiplexing)
select 함수의 이해와 서버의 구현 select 함수는 멀티플렉싱 서버 구현의 대표적인 방법이다. select 함수를 사용하면 한곳에 여러 개의 파일 디스크립터를 모아놓고 동시에 이들을 관찰할 수 있다. - 수신한 데이터를 지니고 있는 소켓이 존재하는가? - 블로킹되지않고 데이터의 전송이 가능한 소켓은 무엇인가? - 예외상황이 발생한 소켓은 무엇인가? 그런데 select 함수는 사용방법에 있어서 일반적인 함수들과 많은 차이를 보인다. 보다 정확히 표현하면 사용하기가 만만치 않다. 그래도 select 함수가 멀티플렉싱 서버의 전부라고해도 과언이아니기때문에 차근차근 살펴보도록 하자. 위 그림은 select 함수를 호출해서 결과를 얻기까지의 과정을 간략히 정리한 것이다. 그림에서는 select 함수의 호출..