ch.1

1-1 작업을 동시에 실행하는 일에 대한 간략한 역사

스레드는 멀티프로세서 시스템의 능력을 최대한 끌어낼 수 있는 가장 쉬운 방법

프로세서 개수가 늘어날수록 여러 작업을 동시에 실행하는 일이 더욱 중요하다.

  1. 프로세스 개념을 만들어 낸 것과 같은 이유로 스레드가 고안됨

  2. 스레드로 인해 한 프로세스 안에 여러 개의 프로그램 흐름이 공존 가능

  3. 스레드는 메모리, 파일 핸들 등 프로세스를 내 할당 자원을 공유함

  4. 스레드는 가벼운 프로세스로 불리움

  5. 한 프로세스 내 스레드들은 같은 변수에 접근이 가능. 같은 힙에 객체 할당

    ⇒ 프로세스 보다 세밀한 단위로 데이터 공유 가능

공유 데이터 접근 과정을 적절하게 동기화하지 않으면 예상치 못한 결과를 얻을 수 있음

1-2 스레드의 이점