언뜻 보면, 여러 개의 일을 동시에 처리할 수 있으므로 멀티 스레드가 싱글 스레드보다 좋아 보입니다. 하지만 꼭 그런 것은 아닙니다. 이해를 돕기 위한 예시를 하나 들어보겠습니다.
한 음식점에 점원이 한 명 있습니다. 손님은 여러 명이고요. 점원 한 명이 주문을 받아 주방에 넘기고, 주방에서 요리가 나오면 손님에게 서빙을 합니다. 그 후 다음 손님의 주문을 받습니다.
▲ 그림 1-12 싱글 스레드, 블로킹
이런 구조라면 다음 손님은 이전 손님의 요리가 나올 때까지 아무것도 하지 못하고 기다리고 있어야 합니다. 이것이 바로 싱글 스레드(점원), 블로킹 모델입니다. 매우 비효율적입니다.