멀티 스레드를 이해하기 위해 멀티 태스킹과 프로세스 같은 운영체제 기본 개념들을 알아야한다. 멀티 스레드 이해를 위한 핵심 내용만 살펴보자. 1) 단일 프로그램 실행ex) 프로그램 2개 이상을 동시에 실행했다. 음악을 들으면서, 문서를 작성하는 것이다. 이 때 연산을 처리할 수 있는 CPU 코어는 1개만 있다. - 프로그램의 실행이란 프로그램 코드를 순서대로 CPU에서 연산(실행)하는 일이다.- 여기서 CPU 코어는 하나이므로 한 번에 하나의 프로그램 코드만 실행할 수 있다.- 만약 하나의 프로그램 안에 있는 코드를 모두 읽은 후에야 다른 프로그램의 코드를 실행할 수 있다면 사용자는 답답함을 느낀다.- 실제로 초창기 컴퓨터는 이렇게 실행했다.- 이를 해결하기 위해 CPU 코어로 여러 프로그램을 동시에 ..