더북(TheBook)

언뜻 보면, 여러 개의 일을 동시에 처리할 수 있으므로 멀티 스레드가 싱글 스레드보다 좋아 보입니다. 하지만 꼭 그런 것은 아닙니다. 이해를 돕기 위한 예시를 하나 들어보겠습니다.

한 음식점에 점원이 한 명 있습니다. 손님은 여러 명이고요. 점원 한 명이 주문을 받아 주방에 넘기고, 주방에서 요리가 나오면 손님에게 서빙을 합니다. 그 후 다음 손님의 주문을 받습니다.

▲ 그림 1-12 싱글 스레드, 블로킹

이런 구조라면 다음 손님은 이전 손님의 요리가 나올 때까지 아무것도 하지 못하고 기다리고 있어야 합니다. 이것이 바로 싱글 스레드(점원), 블로킹 모델입니다. 매우 비효율적입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.