2017-03-29 3 views
0

Fehler: java.util.concurrent.TimeoutException: android.database.sqlite.SQLiteConnection.finalize() Zeitüberschreitung nach 10 SekundenTimeout Ausnahme in SQLite

ich diesen Fehler erhalten, aber fanden keine spezifischen Linie in project.Below ist mein logcat Ausgabe:

java.util.concurrent.TimeoutException: android.database.sqlite.SQLiteConnection.finalize() timed out after 10 seconds 
    at android.database.sqlite.SQLiteConnection.nativeClose(Native Method) 
    at android.database.sqlite.SQLiteConnection.dispose(SQLiteConnection.java:238) 
    at android.database.sqlite.SQLiteConnection.finalize(SQLiteConnection.java:178) 
    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:202) 
    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:185) 
    at java.lang.Thread.run(Thread.java:818) 

Antwort

1

Garbage Collector versucht, Ihre SQLiteConnection Instanz zu löschen, die Sie selbst vergessen haben zu schließen. Achten Sie auf close() ing db instance.

+0

Zeigen Sie, wo und wie Sie die SQLite-Datenbank verwendet haben. – azizbekian

+0

Ich benutze Datenbank im ganzen Projekt viele Male. Muss ich SQLIteConnection in jeder Funktion schließen, in der ich eine Abfrage mache? –

+0

Das wäre nutzlos Overhead. Angenommen, Sie haben eine Verbindung in einer Aktivität geöffnet, sollten Sie darauf achten, diese Verbindung zu schließen, wenn die Aktivität beendet wird. Andernfalls bleibt diese Verbindung geöffnet und niemand würde sie verwenden - Speicherverlust. – azizbekian

Verwandte Themen