어렴풋이 알고 있었지만 오늘은 개념을 잡아보려고 한다.
우선 간단히 쓰레드란 ?
위키백과에 나온 정의는 ..
프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다.안드로이드에서는 MainThread에서 UI를 처리한다. 그렇기에 따른 쓰레드에서 UI를 실행하는 일은 없도록 해야한다. 내가 배웠던 방식중에 하나는 asynctask가 있었다. 이 이야기는 간략하게나마 포스팅을 했고 , 최근에는 Handler라는 방식을 알게 되었다.
handler는 UI 변경 시 sendMessage로 메세지 큐에 넣는다
필요 시 루퍼가 차례로 메세지를 꺼내 handlerMessage 메인쓰레드에게 넘겨주는 RUN()을 실행한다.
참고
https://devfarming.tistory.com/3
https://brunch.co.kr/@mystoryg/84
http://blog.naver.com/PostView.nhn?blogId=ssarang8649&logNo=220947884163
https://developer.android.com/reference/android/os/Handler#postAtTime(java.lang.Runnable,%20long)
댓글 없음
댓글 쓰기