1. 스레드 기본 개념
설명
- 프로그램 : 아직 실행하지 않은 소스코드
- 프로세스 : 운영체제로부터 자원을 할당받은 작업의 단위 / 실행중인 프로그램
- 스레드 : 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위
- 하나의 프로세스 안에서 진행되는 작업들
- 스레드 : 프로세스 안에서 수행되는 작업
- 다중 스레드 : 스레드가 여러개 있는 것
- 프로세스 내부 구조
- 프로그램을 실행하면 운영체제가 메모리에 프로세스를 할당
- Code 영역
- 프로그래머가 작성한 소스코드가 저장되어 있습니다. 더 자세히 설명하자면 소스코드가 컴퓨터가 이해할 수 있는 기계어 형태로 저장되어 있습니다.
- Data 영역
- 코드가 실행되면서 사용하는 전역 변수나 static 변수들이 저장되어 있습니다.
- Stack 영역
- 함수가 호출되면 Stack 영역에 할당되며 함수가 종료되면 소멸합니다. 함수에서 사용하는 지역 변수도 함께 저장됩니다. 만약 프로세스에 할당된 메모리보다 Stack 영역을 많이 사용하면 stack overflow 에러가 발생합니다.
- Heap 영역
- 생성자, 인스턴스와 같은 동적으로 할당되는 데이터들을 저장합니다.
- Code 영역
- 프로그램을 실행하면 운영체제가 메모리에 프로세스를 할당
- 스레드 내부 구조
- Stack 만 별도로 사용하고 나머지 영역은 다른 스레드들과 공유
2. 자바에서의 스레드 생성
설명
3. 스레드 생명 주기
설명
4. 자바 스레드 예시
설명
5. 기타
'Dev > ESTsoft 오르미' 카테고리의 다른 글
DML (0) | 2024.02.23 |
---|---|
SQL과 데이터베이스 (0) | 2024.02.23 |
스트림 (0) | 2024.02.23 |
이팩티브 자바-인터페이스 (0) | 2024.02.23 |
람다식 (0) | 2024.02.23 |