내 응용 프로그램에는 매우 간단한 객체 - 메시지 처리 (파이프 라인 아키텍처)에 대해 while-on-volatile-boolean
루프와 BlockingQueue
의 스레드가 거의 없습니다.Producer-Consumer 패턴에 Looper를 사용하면 어떤 이점이 있습니까?
최근에 필자는 동일한 작업을 수행하는 것으로 보이는 친구들과 android.os.Looper
클래스를 만났지 만 API에 배치되었으므로 명시 적 대기열이있는 필기체 루프 대신 이들을 사용하면 어떤 이점 (특히 성능)이 있습니까? 아니면 단지 API 설탕일까요?
다른 큰 차이점 - 핸들러를 통해 일반 Runnable을 루퍼에 게시 할 수 있습니다. 일반적으로 메시지 처리기를 작성할 때는 그렇게하지 않습니다 (일반적으로 특정 메시지에 코드를 작성할 수 있습니다). 그것은 긍정적이거나 부정적입니다. –
@GabeSechan 잘 'ExecutorService'에서도 가능합니다. – Pavlus
타이밍 메시지에 대해 알아 줘서 고마워, 나는 그'Handler' 클래스가 복잡하다는 점을 놓쳤다. 따라서 지능형 메시지 대기열이 필요할 때 실제로 사용됩니다. – Pavlus