2010-06-26 6 views
0

내 데이터베이스를 앱의 수명 동안 열어두고 해지 할 때 데이터베이스를 닫습니다. iOS 4.0 멀티 태스킹이 내 앱을 백그라운드에 넣을 때 데이터를 저장하지만 데이터베이스를 닫지는 않습니다. 나는 이것이 내 응용 프로그램이 결국 데이터베이스를 제대로 닫지 않고 (또는 마무리 문을 실행하지 않고) 결국 메모리에서 제거된다는 것을 의미한다고 믿습니다.sqlite3 iPhone 멀티 태스킹 - 데이터베이스를 제대로 닫아야합니까?

모든 것이 정상적으로 작동하는 것 같지만, 궁금 해서요 ... 데이터베이스를 절대로 닫지 않는 것이 좋습니까?

답변

3

응용 프로그램이 백그라운드로 전환 될 때 데이터베이스를 깨끗하게 닫을 것을 권장합니다. 그 이유는 리소스를 보존하기 위해 앱이 시스템에 의해 종료 될 수 있기 때문입니다. 이 경우

앱이 정상적으로 종료 할 수있는 기회를 얻을하지 않으며, 대신에 즉시 응용 프로그램을 중지의 SIGKIL 신호를 전송에 관계없이 어떤 상태.

데이터베이스 닫기, 명령문을 마무리 변경 사항을 적용하면 앱이 강제 종료 될 때/나 주 및 데이터가 안전하다는 것을 보증합니다.

관련 문제