안드로이드 Thread

Jiyoon Chae·2022년 2월 20일
0

안드로이드

목록 보기
13/23
post-thumbnail

Thread

한개의 프로세스내에서 동시에 실행되는 작업의 단위를 나타냄.

  • Thread는 동시 실행하는 프로그래밍 기법을 추상화 한 것.
  • Thread는 언제나 프로세스 내에서 종속적으로 실행됨.
  • Thread는 Process의 자원을 공유 하지만 독립적으로 실행될 수 있음.
  • Thread 내에서 생성한 자원은 해당 Thread에 종속적임!!

Main Thread

안드로이드의 메인스레드는 UI를 실행시키고, 사용자와의 인터랙션을 위한 용도로 사용.

-> UI 수정 작업은 무조건 메인스레드에서 해야한다!!

  • 앱이 실행되면 Process가 생성되고 Process는 VM(ART)을 실행
  • Android는 Process가 생성될 때 Thread가 하나 생성되는데 이것이 Main Thread

Multi Thread

한개의 프로세스 내에서 동시에 2개 이상의 Thread가 실행되는 상태를 멀티스레드라고 함.

  • 리눅스 및 자바 언어(ART)를 사용하는 안드로이드는 기본적으로 멀티 스레드를 지원함.

Multi Tasking(=Process)

한 CPU에서 여러개의 Multi-Tasking이 실행될 수 있음.

Process는 스레드와 달리 독립적인 자신만의 메모리 공간을 가지고 있음!!

결론

안드로이드는 사용자와의 상호작용을 다루는 UI는 Main-Thread에서 처리하고, 그 외 시간이 소요되는 작업 또는 바로 실행되지 않는 작업은 Back Ground Thread로 처리 됨

profile
바닐라라떼 좋아☕

0개의 댓글