프로세스와 스레드

2022. 4. 22. 19:15java/java

프로세스 : 실행 중인 하나의 프로그램

 -하나의 프로그램은 다중 프로세스를 만들기도 한다.

 

멀티 태스킹

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

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

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

 

 

 

*메인 스레드

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

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

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

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

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

 

 

 5)프로세스의 종료

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

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

    (메인 스레드가 작업 스레드보다 먼저 종료되더라도 작업 스레드가 계속 실행 중이라면

     프로세스는 종료되지 않는다.)

'java > java' 카테고리의 다른 글

스레드 우선 순위  (0) 2022.04.23
작업 스레드 생성과 실행  (0) 2022.04.22
익명 객체  (0) 2022.04.22
중첩 클래스  (0) 2022.04.21
중첩 클래스와 중첩 인터페이스란?  (0) 2022.04.20