SQLite를 기본 데이터 저장소 방법으로 사용하는 응용 프로그램을 개발하고 있습니다. 대체 엔트리 포인트를 사용하는 앱용으로 두 개의 프로세스가 실행 중입니다.다른 프로세스에서 SQLite에 액세스
두 개의 서로 다른 프로세스에서 동일한 DB에 액세스해야하지만 SQLite는 서버 DB 엔진과 같지 않으므로 한 번에 한 번만 액세스 할 수 있습니다.
다른 프로세스에서 액세스 할 때 DB를 "잠그는"방법이 있는지 알고 싶었습니다. 두 번째 프로세스가 동시에 DB에 액세스하려고 시도하면 첫 번째 프로세스가 시작될 때까지 대기합니다. 프로세스가 완료된 후 다시 액세스하려고합니다.
어떻게이 문제를 해결할 수 있습니까?
Thanks Doug!, 나는 싱글 톤을위한 위키에서 기사를 읽었지만, 나에게는 새로운 용어 였지만 나는 지금 그것을 바람직하지 않다고 생각한다. 이것이 블랙 베리에서 작동하지 않는 이유는 무엇입니까? 이 기능은 Java ME에서 사용할 수 없습니까? 나는 RuntimeStore에 대해 잘 모르겠다. 몇 가지 코드 샘플이 있으면 감사 하겠지만 런타임 저장소에 대해 계속 읽습니다. 감사합니다. – Arturo
그런데 SQLITE_BUSY 플래그 @ Blackberry를 사용 했습니까? 이것이 해결책 일 수 있는지 나는 확신하지 못한다. 여기에 예제가 있습니다 http://stackoverflow.com/questions/2775595/sqlite-multi-process-access – Arturo
안녕하세요, RuntimeStore에 대해 읽었습니다.이 경우에는 포장해야하는 objet가 명확하지 않습니다. RuntimeStore에서. 나는 모든 DB 이벤트 (열기, 삽입, 업데이트, 생성 등)를 처리하는 SQLManager라는 클래스를 만들었습니다.이 객체를 래핑해야합니까? RuntimeStore 개념이 바람직하지 않다고 생각하지만이 경우에는 구현이 명확하지 않습니다. =/어떤 도움을 주시면 감사하겠습니다. 사전에 감사합니다 – Arturo