비동기 전송을 위한 Thread 관리 에서 Executor 설명 오류
안녕하세요! 유익한 강의 감사합니다.
Executor 설명 중 한 가지를 정정드리고 싶습니다.
강의에서 설명해주신 내용은 maxPoolSize까지 바로 스레드가 생성되는 것으로 이해될 수 있는데,
실제 동작은 먼저 corePoolSize만큼 스레드를 생성하고,
그 이후 요청은 큐에 쌓이며,
큐가 가득 찼을 때 maxPoolSize까지 확장되는 구조입니다.
물론 강의 흐름상 의도적으로 설명을 단순화하신 것일 수도 있습니다만,
혼동될 수 있는 부분이라 참고용으로 댓글 남깁니다!
답변 2
1
안녕하세요 chess.min님 이렇게 추가적으로 도움이 될 수 있는 내용 작성해주셔서 감사합니다. 아무래도 제가 강의하는 입장에서 조금 부족한 부분이 있었던거 같네요.
좋은 하루 보내세요!! 감사합니다!
0
안녕하세요, 인프런 AI 인턴입니다. chess.min님.
Executor 설명과 관련한 질문을 주셔서 감사합니다. 말씀하신 것처럼 ExecutorService의 스레드 관리 방식은 조금 더 세부적인 이해가 필요한 부분입니다. 일반적인 동작 방식은 다음과 같습니다:
- corePoolSize 만큼 스레드를 초기로 생성합니다. 이는 보통 최소한의 스레드 풀 크기를 의미합니다.
- 새 작업은 큐에 쌓입니다. 만약 큐가 가득 차게 되면,
- maxPoolSize까지 추가 스레드를 생성하여 작업을 처리합니다. 이 경우, corePoolSize와 maxPoolSize 사이에서 스레드 수가 유동적으로 변경됩니다.
- 작업이 완료되고 스레드가 과도하게 생성되었을 경우, 일정 시간 후 초과된 스레드가 제거되어 corePoolSize로 돌아갑니다.
이러한 구조는 작업을 효율적으로 처리하고 성능을 최적화하는 데 중요한 역할을 합니다. 강의에서의 간단한 설명은 학습의 흐름을 위해 의도된 것일 수 있습니다. 이러한 세부 사항을 명확하게 해주셔서 감사합니다!
관련된 유사한 질문을 참고해보세요:
위의 링크에서는 ExecutorService의 스레드 풀 관리에 대해 더 자세히 탐구할 수 있는 논의가 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
실습 권한 부탁드립니다.
0
9
1
강사님 질문 있어요.
0
14
2
reference to myMethod is ambiguous 오류
0
10
1
어플리케이션 실행 후 에러에 관하여 질문 드립니다.
2
28
2
업캐스팅 문제 예시 5
0
30
2
(기출) 2025년 2회 이론 파트
0
26
2
RestTemplate과 webClient, RestClient에 대해서 질문드립니다.
0
18
1
회원 도메인 인터페이스 개발
0
21
1
26년 1회실기
0
31
2
강의 자료
0
37
2
setter 사용하지 않기
0
31
1
27:15 break 출력
0
35
2
세션을 제대로 이해한게 맞는지 궁금합니다
0
20
1
jsp의 상대경로와 Controller에서 반환하는 이름이 달라도 괜찮나요?
0
26
1
55강 파이썬에만있는 연산자들
0
37
2
55강의 파이썬에서만 있는 연산자들
0
29
2
프로젝트 의존 관계
0
55
2
멀티모듈 초기설정
0
105
2
Advice 패턴을 다시 분리할 수 있나요
0
111
3
CQRS 설계 팁
0
120
2
패키지, 디렉터리 구조 질문 (강의 내용 관련X)
0
109
2
Circuit Breaker 질문
0
88
2
jpa entity 질문
0
99
1
모듈 간 의존성 관리에 대한 질문
0
115
1





