2011-01-09 58 views
2

我創建了一個SQLiteDatabase實例並調用getReadableDatabase()getWritableDatabase()並以這種方式操作數據,但我從來沒有通過db.close()關閉數據庫。不關閉它不好嗎?我嘗試將db.close()添加到我的onStop()onDestroy()方法中,但它只是強制關閉。Android sqlite離開連接打開

回答

5

儘可能晚地打開連接。儘快關閉它。關閉它在「finally」塊中以確保它被關閉。

而且一般情況下,按相反的順序處置資源以獲得它們。

2

你基本上是通過打開額外的遊標來擴展你的應用程序。最佳做法是關閉連接。

我注意到,如果你不這樣做,會引發很多異常。

+2

關閉數據庫在哪裏合適? – semajhan 2011-01-09 02:41:06

+1

@semajhan我通常在活動 – GSree 2011-05-27 05:19:23

0

如果您未關閉數據庫連接,則會隨着時間的推移導致內存泄漏。你可以使用startManagingCursor,但隨着這一點你必須關閉數據庫連接。順便說一下,當在onStop()或onDestroy()方法中關閉數據庫連接時,出現什麼類型的錯誤或異常