Java
Process와 Thread
Wanderer Kim
2025. 5. 16. 19:10
728x90
java의 동시성에 대해서 배우기 시작하면서 가장 기초적인 개념인 process와 thread에 대해서 정리해 보았다.
Process
- process란 실행 중인 프로그램을 말한다. process는 메모리, CPU,등 자원을 할당받아 독립적으로 실행된다.
- 특징
- 동릭된 메모리 공간을 가진다.
- 하나의 프로세스는 다른 프로세스의 메모리에 접근 불가하다.
- 프로세스를 생성하는 데 큰 비용을 든다.
- 예시: 크롬 부라우저, 엑셀, 메모장
Thread
- thread는 prcoess 내에서 실행되는 작업 흐름의 단위이다.
- 특징
- 같은 process 안의 여러 thread는 코드, 데이터, 힙 메모리를 공유한다.
- 각각의 thread는 별도의 스택 메모리를 가진다.(함수 호출, 지역 변수등을 저장)
- thread의 생성 비용은 process에 비해 적다.
- 예시: 크롬에서 동시에 실행되는 여러개의 탭
반응형