프로세스와 쓰레드
● 포그라운드 프로세스(foreground process)
: 사용자가 현재 조작중인 최상위 화면의 액티비티를 말함. 가장 중요한 프로세스, 가장 마지막에 제거되
는 프로세스(메모리 부족할 시)
● 비저블 프로세스(visible process)
: 사용자 화면에 보여지지만 포그라운드 아님, 포그라운드 프로세스 다음으로 중요
● 백그라운드 프로세스(background process)
: 사용자에게 보여지지 않는 액티비티. 중요 X, 포그라운드, 비저블이 메모리 요구하면 이 액티비티 제거
● 엠프티 프로세스(empty process)
: 액티비티 셧다운 된 액티비티. 활성화된 App 컴포넌트 가지고 있지 않지만 이 App이 실행될 때를 대비
해 캐쉬의 용도로 메모리를 점유하고 있음(shutup 단축), 언제사라질지 모름
● 서비스 프로세스(service process)
: 특정 서비스를 위하여 존재. UI 없음 포그라운드, 비저블을 보유하기에 충분한 메 모리가 존재하는
한 제거되지 않고 유지
데몬 쓰레드
: 다중 쓰레드로된 응용PG은 모든 쓰레드가 종료되어야 프로세스 종료
: 쓰레드들 중 데몬 역할. 다른 쓰레드에 서비스 해주면서 다른 쓰레드 모두 종료하면 자신도 종료.
:쓰레드를 생성한 다음 setDaemon(true)메소드 이용해서 만들 수 있음
반응형