Hello

Java 프로세스, 쓰레드(process & thread)

by 볼빵빵오춘기

프로세스 & 쓰레드

프로세스(process)

실행 중인 프로그램, 자원(resources)과 쓰레드로 구성

⇒ 여기서 자원= 메모리, cpu…

 

쓰레드(thread)

프로세스 내에서 실제 작업을 수행한다.

모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다.

 


 

멀티 쓰레드의 장단점

장점

  • 시스템 자원을 보다 효율적으로 사용할 수 있다. 
  • 사용자에 대한 응답성(responseness)이 향상된다.
  • 작업이 분리되어 코드가 간결해 진다.

 

단점

  • 동기화(synchronization)에 주의해야 한다. 
  • 교착상태(dead-lock)가 발생하지 않도록 주의해야 한다.
  • 각 쓰레드가 효율적으로 고르게 실행될 수 있게 해야 한다. 

 

대부분의 프로그램이 멀티 쓰레드로 작성되어 있다.

그러나, 멀티 쓰레드 프로그래밍이 장점만 있는 것은 아니다. 

여러 모로 좋은 점은 맞지만 고려해야 할 사항들이 많다. 

 

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기