
스레드(Thread)란 프로세스 내에서 실행되는 흐름의 단위를 의미한다.
또는, 프로세스 내부에 있는 CPU 수행 단위라고 할 수 있다.
따라서, 프로세스 내에서 실제로 작업을 실행하는 주체이다. 프로세스에 의해 실행 된다는 것을 알 수 있다.
자바에서는 JVM(Java Virtual Machine)에 의해 관리됩니다.
Stack 영역을 보유한다.Code, Data, Heap 영역을 공유한다.레지스터와 스택을 갖는다. 스레드는 프로세스 내에서 각각 Stack만 할당받고 Code, Data, Heap영역은 공유된다.
한 프로세스 내에서 동작되는 여러 실행의 흐름이며, 프로세스내의 주소 공간이나 자원(Heap) 등 스레드끼리 공유하면서 실행이 된다.
참고
https://code-lab1.tistory.com/43
https://velog.io/@zerone015/thread
https://gwanhyeon.github.io/OS-20201116-OS-Process-Thread/