면접 - 자바

개발자 면접 질문 - 쓰레드 정의

snow-line 2020. 12. 2. 18:40
반응형

1. 쓰레드

- 쓰레드는 프로세스 내에서 실행되는 흐름의 단위를 말한다.

 

2. 멀티 쓰레드

 - 하나의 프로세스에서 둘 이상의 쓰레드를 동시에 실행할 수 있는 것을 말한다.

 - 스케쥴러에 의해 각 쓰레드에게 시간을 할당하여 실행함으로써 여러 쓰레드가 동시에 실행되는 것 처럼 보인다.

 

3. 특징

 - 각 쓰레드는 독립적인 Stack(스택) 영역 갖는다.

 - 메서드 영역과 힙 영역을 공유한다.

 - 같은 프로세스 내의 쓰레드들은 스택 이외의 모든 것을 공유한다.

 - JVM이 운영체제 역할을 한다.

 - 자바 쓰레드는 JVM에 의해 스케줄되는 실행 단위 코드 블록이다.

 - 자바에서 쓰레드 스케줄링은 JVM이 관리한다.

 

4. 구현 방식

 - Thread 클래스를 상속

 - Runnable 인터페이스를 구현

반응형