2011-09-16 1 views
2

Drupal Services 모듈에 대한 비동기 호출을 처리하는 IntentService가 있습니다. 현재, 스레드가 완료된 후에 서비스가 종료 될 것이라는 인상을 받고 있었기 때문에 onHandleIntent에서 매번 DrupalXmlRpcService 객체가 초기화되었습니다. 이 객체를 IntentService 객체의 생성자에서 초기화해야합니까?IntentService 수명주기

답변

1

개체를 만드는 데 많은 비용이 들고 자주 사용하는 경우 전역 Application 개체에 참조를 저장하거나 해당 개체를 싱글 톤 (thread-safe)으로 설정하는 것이 좋습니다. 귀하의 질문에 관해서는 동일한 서비스에 여러 개의 Intent를 보내는 경우 handleIntent()이 여러 번 호출 될 수 있으므로 생성자에서 init을 원할 수 있습니다 (그러나 주 스레드를 차단하는 데 너무 오래 걸리는 경우).

+0

은 IntentService의 생성자에 넣어 두었습니다. – SeanPONeil