[면접스터디] 자바 3주차 - 스레드 기초, 심화 (18~20)

동춘·2024년 11월 12일

[면접스터디] 자바

목록 보기
10/15

18. Java에서 스레드를 만드는 방법을 설명해 주세요.

  • Thread 클래스 상속과 Runnable 인터페이스 구현이라는 두 가지 주요 방식이 있습니다.

Runnable을 사용하면 작업 정의와 스레드 실행을 분리할 수 있어 코드가 더 유연해지고 재사용성이 높아집니다. Thread 클래스 상속은 간단하게 스레드를 만들 때 유리하지만, 일반적으로 Runnable 인터페이스 구현 방식이 더 많이 사용됩니다.

19. 스레드 풀이란 무엇이고, 왜 사용할까요?

  • 쓰레드 풀은 Runnable로 정의된 작업을 미리 생성된 여러 Thread 객체를 통해 효율적으로 처리합니다.

    쓰레드 풀은 여러 작업이 발생할 때 스레드의 반복 생성과 삭제를 방지하고, 최대 스레드 수를 제한하여 안정적인 멀티스레딩 환경을 제공합니다. 이를 통해, Thread와 Runnable의 단점(리소스 낭비, 관리의 어려움 등)을 보완하고, 보다 안정적이고 효율적인 멀티스레딩을 구현할 수 있습니다.

만약 쓰레드와 러너블 인터페이스로 3개의 쓰레드를 만들어 실행했을때 쓰레드 풀을 2개로 제한한다면 ?

20. 스프링과 같은 프레임워크에서는 스레드 풀의 스레드 개수를 수백 개 이상으로 운영합니다. 이는 Context Switching이 일어남에도 불구하고도 이런 선택을 내린 것인데, 왜 그럴까요?

서버 어플리케이션에서 많은 처리를 동시에 처리하기 위해서
Context Switching이란 ?

profile
건강하개

0개의 댓글