Thread run 메쏘드 안에서, 새로운 Thread 생성
287
작성한 질문수 8
Thread 의 run 함수 안에서, 새로운 Thread 를 생성 할 경우가 있을까요?
만약에, 그 경우가 있다면, Thread stack 과 Heap 영역의 구조가 어떤 식으로
만들어질 지, 궁금합니다.
즉, 기존 Thread Stack 에서, 동일하게, 새로운 Thread 가 Heap 에 할당되고, 새로운 Thread Stack 영역이 만들어지나요?
답변 1
0
네
어떻게 보면 main thread 안에서 우리는 새로운 스레드를 생성하고 있습니다.
스레드 안에서 새로운 스레드를 생성하는 것은 비동기적인 작업을 위임하고자 할 때 선택할 수 있는 부분입니다.
당연히 stack 은 새롭게 생성되고 Heap 은 공동으로 유지하지만 스레드마다 정보는 다르게 가지고 있습니다.
톰캣도 메인 스레드 안에서 생성되는 스레드이며 우리는 그 스레드 안에서 또 다른 스레드를 생성하고 있습니다.
한가지 기억할 점은 우리가 코드 상으로 스레드 안에서 새로운 스레드를 생성하는 것이 중첩되게 보일 수는 있으나 OS 관점에서 보면 커널 수준의 여러 스레드가 만들어진다는 점입니다.
0
한가지 기억할 점은 우리가 코드 상으로 스레드 안에서 새로운 스레드를 생성하는 것이 중첩되게 보일 수는 있으나 OS 관점에서 보면 커널 수준의 여러 스레드가 만들어진다는 점입니다.
=> 이 점이 좋은 답변 같습니다. 감사합니다.
멀티스레드 단일스레드
0
57
0
new Condition 부분 질문
0
85
1
13:00 강의 내용 이해 질문
0
99
1
강의 출시 질문 있습니다.
0
117
1
InterruptedExceptionThreadStopExample 질문입니다.
0
94
2
instance.getMyField()의 값이 왜 다른가요?
0
116
1
해당 강의 내용 무단 도용 신고
0
211
2
Thread Waiting 상태 관련 질문 드립니다.
0
186
1
단일연산변수 api
0
126
0
synchronized 블럭과 메인메모리 반영
0
148
0
실무에서 자바가 제공하는 락을 사용하는 경우
1
244
1
뮤텍스나 세마포어는 busy waiting이 없는 게 맞을까요?
0
160
1
16:50부분에서 타입락 질문드립니다.
0
110
2
16분 7초 뮤텍스 코드 관련해 질문드립니다.
0
160
2
동기화가 보장된다고 하더라도 스레드간 데이터 불일치가 발생할 수 있지 않나요??
0
202
2
리액티브-part2
0
180
2
문자열 풀 값을 이용한 String 변수
0
207
2
스레드 라이브러리는 커널과 같은 역할을 하지 못하나요?
0
173
1
자식 프로세스를 쓰는 이유
0
188
1
커널 모드 전환시 질문이 있습니다!
0
146
1
[공유] setName 시 threadName이 1부터 시작하는 이유
0
180
1
synchronized = 모니터
0
288
2
Thread의 Context Switching 문의드립니다.
1
260
1
동기 & 논블록킹 질문 드립니다.
0
234
2





