싱글 톤을 작성하여 여러 프로세스를 처리하려면 어떻게해야합니까? 가능한가? 예를 들어 Android의 원격 서비스에서 작동하는 코드가 있습니다. 어떻게이 목적을 위해 싱글 톤을 쓸 수 있습니까?여러 프로세스를 통한 싱글 톤?
답변
public enum MySingleton {
SOLE;
//all class stuff
}
이 문자는 단순히 작성되고 게으른 스레드로부터 안전합니다. 직접 MySingleton.SOLE
을 사용하거나 다른 변수에 넣을 수 있지만 모두 하나의 인스턴스에 대한 참조 일뿐입니다. 원하는만큼 많은 프로세스에서 사용할 수 있습니다. 그것은 Effective Java, Second Edition
에서 사용하는 글로벌 데이터에 관해서입니다,
그건 내 생각이 아니다 (안드로이드 프로세스가 스레드가 정말) (질문에 그 요구 사항을 넣어주세요), 당신은 모든 곳에서 MySingleton.SOLE
에 도달 할 수 있습니다. 정적 상수는 전역 적입니다. 물론 이름이 너일거야.
물론 해결 방법이 있습니다. 클래스 로딩을 통해이 싱글 톤을 속일 수 있습니다.
스레드가 아닌 여러 개의 다른 작업에 대해 하나의 인스턴스를 갖고 싶다면 Hybild 나 다른 ORM 개체로 singleton 빌드가 쉬운 솔루션이 될 것입니다. 모든 프로세스는 동일한 테이블에서 동일한 데이터가있는 동일한 행을 보게됩니다. 그러나 나는 당신의 과업이 과도하다고 생각합니다.
여러 프로세스에서 사용할 수있는 싱글 톤을 만들려면 클래스가 필요합니다. 하지만 내 싱글 톤의 getInstance() 메서드를 호출하면 내 싱글 톤의 새 인스턴스를 얻게됩니다 – user1074896
제발 내 대답을주의 깊게 읽으십시오. 그것은 수업이 아니에요, enum입니다! SOLE의 두 번째 인스턴스를 만드는 것은 절대 불가능합니다. – Gangnus
클래스가 열거 형이 아닌 Singleton이되어야합니다. 일부 글로벌 데이터를 열거 형에 저장하려면 어떻게합니까? 사전에 감사드립니다. – user1074896
만드는 원격 서비스는 항상 싱글 톤입니다. Android Interface Definition Language를 사용하여 프로세스간에 통신하려면 인터페이스가 있어야합니다.
Android Interface Definition Language
그래서 여기에 우리가 간다,이 예 http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/RemoteService.html이 스레드는 오래지만, 현재 허용 대답은 잘못된 어떤 사람들 오해의 소지가 있습니다를 참조하십시오.
Android의 서비스는 앱과 동일한 프로세스 또는 다른 프로세스에서 모두 실행될 수 있습니다.
내부 용으로 자신의 앱에서 정의한 서비스 인 경우 동일한 프로세스에서 실행되고있을 가능성이 큽니다. process
attributes on the Manifest 중 하나를 설정하지 마십시오. 이 경우 서비스는 주 스레드 또는 일부 백그라운드 스레드에서 작업을 실행하고 나머지 단일 응용 프로그램과 동일한 단일 인스턴스를 공유합니다.
이 서비스가 별도의 프로세스 또는 별도의 응용 프로그램에서 실행되는 진정한 원격 서비스 인 경우 달성하려는 대상은 훨씬 더 어렵습니다. 각 프로세스는 자체 싱글 톤 인스턴스를 가지며 서로 전혀 관련이 없습니다. 이것은 다른 프로세스가 동일한 버전의 코드를 실행하지 않을 수도 있다는 것을 알게되면 완벽하게 이해할 수 있습니다.
실제로 프로세스간에 공통된 개체가 있기를 원한다면 (힌트 : 거의 확실하지 않음) 데이터에 대한 공유 메모리 공간을 만들고 동기화 수단을 구현해야합니다. 나는 에 대해 전체 대학 강의가 있다고 확신하는데, 그 대상은입니다.
- 1. GCD를 통한 싱글 톤 문제
- 2. 싱글 톤으로 묶인 싱글 톤 또는 비 싱글 톤
- 3. C++ 퀴즈 - 싱글 톤
- 4. 싱글 톤 배율
- 5. ApplicationDelegate 싱글 톤 아이폰
- 6. 싱글 톤 생성
- 7. 싱글 톤 WF 서비스에 대한 여러 클라이언트
- 8. 여러 개의 싱글 톤 : 각 작업마다 하나씩
- 9. 여러 ViewController - 싱글 톤 객체를 사용해야합니까?
- 10. C++, dll의 여러 인스턴스, 싱글 톤
- 11. 싱글 톤 클래스는 여러 가상 디렉터리에 사용
- 12. Android 싱글 톤 방법
- 13. 제거 싱글 톤
- 14. NSMutableDictionary 싱글 톤 문제
- 15. 싱글 톤 패턴, 개인 메소드 및 싱글 톤 모듈
- 16. 내가 싱글 톤 패턴을 구현하는 클래스를 싱글 톤 패턴
- 17. 싱글 톤 문제
- 18. 플렉스의 싱글 톤 클래스
- 19. 싱글 톤 - 유용하다
- 20. 싱글 톤 방법의 차이
- 21. 클러스터 환경의 싱글 톤
- 22. 싱글 톤 소멸자
- 23. 싱글 톤 구현의 차이
- 24. 싱글 톤 사용
- 25. 싱글 톤 모델 Doctrine
- 26. NSMutable 싱글 톤 질문
- 27. 싱글 톤 디자인 패턴
- 28. 해제 싱글 톤
- 29. Android 싱글 톤 Threadsafe
- 30. 싱글 톤 클래스는
질문이 제대로 표시되지 않습니다. – Lucifer
Android에서 여러 프로세스에 대해 Singleton 클래스를 작성할 수 있습니까? – user1074896
http://groups.google.com/group/android-developers/browse_thread/thread/abe59add03ae4ce3 하지만 단 하나의 싱글 톤이 있어야합니다. 가능합니까? – user1074896