개발/Java

[JAVA] 프로세스와 쓰레드

hojak99 2016. 7. 4. 12:36

프로세스와 쓰레드

 

 

● 포그라운드 프로세스(foreground process)

: 사용자가 현재 조작중인 최상위 화면의 액티비티를 말함. 가장 중요한 프로세스, 가장 마지막에 제거되


는 프로세스(메모리 부족할  시)

 

 

● 비저블 프로세스(visible process)

: 사용자 화면에 보여지지만 포그라운드 아님, 포그라운드 프로세스 다음으로    중요

 

 

● 백그라운드 프로세스(background process)

: 사용자에게 보여지지 않는 액티비티. 중요 X, 포그라운드, 비저블이 메모리 요구하면 이 액티비티 제거

 

 

● 엠프티 프로세스(empty process)

: 액티비티 셧다운 된 액티비티. 활성화된 App 컴포넌트 가지고 있지 않지만 이 App이 실행될 때를 대비


해 캐쉬의 용도로 메모리를 점유하고 있음(shutup 단축), 언제사라질지 모름

 

 

● 서비스 프로세스(service process)

: 특정 서비스를 위하여 존재.  UI 없음    포그라운드, 비저블을 보유하기에  충분한 메 모리가 존재하는 


한 제거되지 않고   유지

 

 



 

데몬 쓰레드

: 다중 쓰레드로된 응용PG은 모든 쓰레드가 종료되어야 프로세스  종료

: 쓰레드들 중 데몬 역할. 다른 쓰레드에 서비스 해주면서 다른 쓰레드 모두 종료하면 자신도 종료.

:쓰레드를 생성한 다음 setDaemon(true)메소드 이용해서 만들 수 있음

반응형