Nuke Olaf - Log Store

[Android] 안드로이드 - 쓰레드, 핸들러 사용 예제 링크 본문

Android

[Android] 안드로이드 - 쓰레드, 핸들러 사용 예제 링크

NukeOlaf 2019. 12. 29. 13:53

1. Thread 를 사용하는 방법

Thread 를 상속하는 class 를 만들어서 사용한다

https://bitsoul.tistory.com/100

 

2. Runnable 인터페이스를 구현하는 방법

Thread 를 상속받을 클래스가 이외의 다른 상속이 필요한경우, Runnable 인터페이스를 구현한다 

https://bitsoul.tistory.com/101

 

3. Handler 를 사용하는 방법

안드로이드의 경우 'worker Thread' 가 'main Thread (UI Thread)'의 변수를 참조하거나 변경을 할수 있어도, 'main Thread (UI Thread)' 에서 정의된 UI 를 변경할수는 없다. 그래서 Handler 를 통해서 이를 해결한다.

•  안드로이드 에서 Handler 란?:
  ▫ 메인스레드와 작업스레드 간에 통신을 할 수 있는 방법.

• Handler가 필요한 주요이유:
   ▫ 작업스레드에서는 메인스레드의 변수를 참조하거나 변경할 수는 있지만, 메인스레드에서 정의된 UI(예: 위젯, View 등)을 변경할 수는 없다.
   ▫ 작업스레드에서 메인스레드의 UI를 변경할 필요가 있을경우, 작업스레드는 Handler를 통해 메인스레드에게 UI를 변경하라고 알릴 수 있다.

• 사용 방법:
  ▫ 핸들러를 생성하는 스레드만이 다른 스레드가 전송하는 'Message'나 'Runnable 객체'를 수신하는 기능을 할 수 있다.

• 사용 예:
  ▫ 메인스레드에서 생성한 핸들러는 메인스레드나 작업스레드 어디에서나 참조할 수 있으며, 메시지 전송 함수인 sendMessgae나 Runnable 전송 함수인 post 를 호출할 수 있다.
  ▫ 이 경우 전송되는 메시지나 Runnable은 핸들러 객체를 생성한 메인스레드에서만 수신할수있다.

핸들러 개요>>

https://bitsoul.tistory.com/102

핸들러 사용예제 (메시지 전송) >>

https://bitsoul.tistory.com/103

핸들러 사용예제 (Runnable 보내기) >>

https://bitsoul.tistory.com/104

핸들러 사용예제 (메인스레드의 핸들러를 직접 참조할 수 없을때) >>

https://bitsoul.tistory.com/105

 

Comments