Nuke Olaf - Log Store
[Android] 안드로이드 - 쓰레드, 핸들러 사용 예제 링크 본문
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
'Android' 카테고리의 다른 글
[Android] 안드로이드 - 핸들러로 Message 와 Runnable 을 보내는것의 차이 (0) | 2019.12.29 |
---|---|
[Android] 안드로이드 - 핸들러란? (0) | 2019.12.29 |
[Android] 안드로이드 - 안드로이드에서 쓰레드란 (0) | 2019.12.27 |
[Android] 안드로이드 - Shared Preference 저장 위치 접근하기 (0) | 2019.12.24 |
[Android] 안드로이드 - JSON Array 와 JSON Object 를 어떤 상황에서 사용하는것이 효율적일까? (0) | 2019.12.24 |