android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5)问题解决
来源:互联网 发布:淘宝女包店 我爱你店 编辑:程序博客网 时间:2024/05/21 01:51
//忘记原作者连接,请见谅。
public class DatabaseManager {
private AtomicInteger mOpenCounter = new AtomicInteger();private static DatabaseManager instance;
private static SQLiteOpenHelper mDatabaseHelper;
private SQLiteDatabase mDatabase;
//初始化
public static synchronized void initializeInstance(SQLiteOpenHelper helper) {
if (instance == null) {
synchronized (DatabaseManager.class) {
if (null == instance) {
instance = new DatabaseManager();
mDatabaseHelper = helper;
}
}
}
}
public static synchronized DatabaseManager getInstance() {
if (instance == null) {
throw new IllegalStateException(DatabaseManager.class.getSimpleName() +
" is not initialized, call initializeInstance(..) method first.");
}
return instance;
}
//写
public synchronized SQLiteDatabase openWritableDatabase() {
if(mOpenCounter.incrementAndGet() == 1) {
mDatabase = mDatabaseHelper.getWritableDatabase();
}
return mDatabase;
}
//读
public synchronized SQLiteDatabase getReadableDatabase() {if(mOpenCounter.incrementAndGet() == 1) {
// Opening new database
mDatabase = mDatabaseHelper.getReadableDatabase();
}
return mDatabase;
}
//同步关闭
public synchronized void close() {
if(mOpenCounter.decrementAndGet() == 0) {
mDatabase.close();
}
}
//强制真正的关闭
public synchronized void trueClose() {
mDatabase.close();
}
}
用法:在myapplication调用初始化:
DatabaseManager.initializeInstance(new DBHelper(this));
阅读全文
0 0
- android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5)问题解决
- android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5)
- android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5): , while compilin
- Android SQLiteDatabaseLockedException: database is locked
- Android SQLiteDatabaseLockedException: database is locked
- 解决android: SQLiteDatabaseLockedException: database is locked
- SQLiteDatabaseLockedException: database is locked 解决方法
- Android Database 并行访问 SQLiteDatabaseLockedException: database is locked 解决方案
- android.database.sqlite.SQLiteException: database is locked
- sqlite database is locked
- sqlite database is locked
- ios sqlite database is locked
- sqlite遇到database is locked
- sqlite The database file is locked database is locked
- sqlite出现database is locked错误
- sqlite报database is locked错误是什么原因?
- 解决SQLite中的 database is locked
- svn sqlite[S5]:database is locked
- Python3教程Web开发实战梳理-day3(编写ORM)
- 递归
- webpack 2.x 之 CommonsChunkPlugin
- Android开发 华为手机读取相册闪退问题
- java对象和类
- android.database.sqlite.SQLiteDatabaseLockedException: database is locked (code 5)问题解决
- Android异常崩溃Crash重启方案
- android studio大坑 executing external native build for cmake
- TCP/UDP端口号调研 tcp的6个标志位
- Springmvc 使用Restful架构(五)
- Python 学习笔记
- mysql中查询日志与慢查询日志
- hihoCoder 编程练习赛19 A, B
- HDU