안녕하세요. 갓 안드로이드 공부를 시작한 신입입니다.

컨텐츠 프로바이더를 공부하면서 궁금한게 생겨서 질문 드립니다.

 

developer 사이트에서 CP 관련 자료를 보면 Manifest에 provider쪽 attr부분에 multiprocess 속성을 true로

주면 동기화가 안된다는 식으로 설명이 되어 있어서 갑자기 궁금해 졌어요.

 

질문은,

1. multiprocess 속성은 default로 false이니 프로바이더는 기본적으로 동기화 상태인가?

2. 어떤 방식으로 동기화가 진행되며, multiprocess 속성으로 비동기화가 되는 이유는 무엇인가?

3. 다른 attr속성인 syncable는 무엇과의 동기화인가? (여기서 말하는 server가 무엇인지 모르겠네요.) 

 

 인터넷을 뒤져 나름대로 1. 기본적으로 동기화 2. 리졸버는 내부에서 관리되므로 각 리졸버가 동시에 접근하지

못하도록 관리, multiprocess 속성을 줄 경우, 접근하는 각 프로세서에서 컨텐츠 프로바이더 인스턴스를 생성하게

되어 하나의 데이터에 여러 어플리케이션이 접근이 가능하게 되어 문제가 발생. 정도로 생각했습니다.

 

그런데 인스턴스로 내부 데이터 접근이 가능하다면 컨텐츠 프로바이더가 필요해 보이지가 않고, multiprocess 시

IPC 수행을 막는다는 말도 잘 이해가 가질 않아 질문 드립니다.