본문 바로가기

자바

[스레드] 1. 멀티 스레드 개념

프로세스

-> 실행 중인 하나의 프로그램

 

멀티태스킹

-> 두 가지 이상의 작업을 동시에 처리하는 것

-> 멀티 프로세스 : 독립적으로 프로그램들을 실행하고 여러 가지 작업 처리

-> 멀티 스레드: 한 개의 프로그램을 실행하고 내부적으로 여러 가지 작업 처리

 

메인 스레드

-> 모든 자바 프로그램은 메인 스레드가 main() 메소드를 실행하면서 시작된다.

-> main() 메소드의 첫 코드부터 아래로 순차적으로 실행한다.

-> main() 메소드의 마지막 코드를 실행하거나, return 문을 만나면 실행이 종료된다.

-> main 스레드는 작업 스레들을 만들어서 병렬로 코드들을 실행할 수 있다.

     즉 멀티 스레드를 생성해서 멀티 태스킹을 실행한다.

-> 프로세스의 종료

* 싱글 스레드: 메인 스레드가 종료하면 프로세스도 종료된다.

* 멀티 스레드: 실행중인 스레드가 하나라도 있다면, 프로세스는 종료되지 않는다.