프로세스 내에서 실행되는 작은 실행 단위,하나의 프로세스는 여러 스레드를 가질 수 있다.한 프로세스에서 여러 스레드가 동시에 실행 되는 것을 멀티 스레드 라고 하고 멀티 스레드를 사용하면 한 프로세스 내에 여러 작업을 동시에 수행 할 수 있다. CPU를 사용 할 때 작업을 동시에 처리하기 위해 두가지 방식을 사용한다.1. 동시성(concurrency) : 여러 작업을 논리적 으로 동시에 수행,하나의 CPU 코어가 여러 작업을 빠르게 전환 하며 마치 동시에 하는 것 처럼 보이게 만드는 방식2. 병렬성(parallelism) : 여러 작업을 물리적으로 동시에 수행,여러 CPU 코어 또는 여러 CPU 가 동일한 시간에 여러 작업을 동시에 처리하는방식,스레드는 같은 메모리 공간을 공유 하면서 독립적 으로 실행한..