Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- C programming
- Algorithm
- C 언어 코딩 도장
- stream
- JSON
- 이것이 자바다
- Stack
- 알기쉬운 알고리즘
- R
- buffer
- Serialization
- s
- Graph
- coding test
- 윤성우 열혈자료구조
- insertion sort
- Selection Sorting
- 이스케이프 문자
- list 컬렉션
- 메모리구조
- 윤성우의 열혈 자료구조
- datastructure
- 혼자 공부하는 C언어
Archives
- Today
- Total
Engineering Note
[Java] main thread 실행 흐름과 call stack, stack frame, main thread 개념 본문
Programming Language/Java
[Java] main thread 실행 흐름과 call stack, stack frame, main thread 개념
Software Engineer Kim 2025. 8. 2. 16:41JVM 메모리의 3가지 주요 영역
- method area, call stack, heap
call stack(call stack area)
- stack 자료구조를 기반으로 메서드 호출을 추적하는 공간, JVM이 thread마다 만들어 줌.
- 간단하게 stack area라고도 함.
stack frame
- 메서드가 호출될 때, call stack에 push되는 단위. 지역변수, 매개변수, 리턴 주소 등이 들어있음.
- call stack area에 차례대로 저장되는 메서드의 호출 정보
main thread
- Java 프로그램 실행시 JVM이 자동으로 만들어주는 최초의 thread, main() 메서드를 실행함.
[JVM 시작]
│
▼
[Main Thread 생성] ← OS에서 실제 실행 단위
│
▼
[Call Stack 생성] ← 스택 자료구조 기반, 메인 쓰레드 전용
│
▼
[main() 호출됨] → Stack Frame(main)
│
├── methodA() 호출 → Stack Frame(methodA) push
│ └── methodB() 호출 → Stack Frame(methodB) push
│
▼
각 메서드 종료되면 → Stack Frame이 하나씩 pop
'Programming Language > Java' 카테고리의 다른 글
[Java] Stream, map() (0) | 2025.08.27 |
---|---|
[Java] Thread 구현과 실행 (1) | 2025.08.02 |
[Java] Interface와 DI(Dependency Injection)를 통해 객체간 결합 낮추기, Interface를 사용하는 이유 (4) | 2025.08.01 |
[Java] BufferedReader, Reader 객체와 Stream (0) | 2025.07.22 |
[Java] 직렬화(Serialization) 개념과 직렬화를 하는 이유 (0) | 2025.07.19 |
Comments