作者:
magic704226 (梅姬?沒雞?傻傻分ä¸æ¸…楚)
2017-08-18 15:15:13SQLite在MultiThreading下
會有一個問題是
instance多個SQLiteOpenHelper
會發生SQLiteDatabaseLockedException: database is locked
解法兩種
(1)
SQLiteOpenHelper弄成Singleton
單例模式,確保一個時間只有一個Thread讀寫SQLite
SQLiteDatabase中
insert,update,execSQL operation都會調用lock()
只有有query()沒有調用lock()
(2)
API 11以上
直接用enableWriteAheadLogging()
因為multitheading read/write不是針對DB
是先對log
有沒考慮到的部分嗎
請各位高手指點
感謝