(안드로이드) Handler

*기본 생성자를 통해 Handler를 생성하면, 생성되는 Handler는 해당 Handler를 호출한 스레드의 MessageQueue와 Looper에 자동연결된다.

이런식으로 메인스레드에서 Handler를 생성하게 되면 Handler는 호출한 스레드의 메시지큐와 자동연결되므로 다른 스레드에서 Handler를 통해 메시지를 전달하면 메인스레드(UI스레드)에서  작업을 가능하게 하는 것입니다.

안드로이드에선 메인스레드와 서브스레드간의 Handler를 통해 메시지를 전달하여 메시지 큐에 저장하는 방식의 통신을 사용합니다. 메시지큐는 FIFO(First In First Out)방식으로 먼저 전달받은 메시지를 먼저 처리합니다.
Handler의 메시지처리 함수는 아래와 같다.

*Handler.sendEmptyMessage(int what)
->Message what(ID)를 사용할 경우 사용하는 메소드

*Handler.sendMessage(Message msg)
->Message what,arg1,obj등 ID와 정보등을 같이 사용하는 경우









댓글

이 블로그의 인기 게시물

(18장) WebSocekt과 STOMP를 사용하여 메시징하기

(네트워크)폴링방식 vs 롱 폴링방식

(ElasticSearch) 결과에서 순서 정렬