我有一个帮助类,它管理整个应用程序中的所有数据库查询。它是一个单例类和一个getInstance()方法。
public static MasterDatabase getInstance() {
if (_masterDb == null) {
_masterDb = new MasterDatabase();
}
return _masterDb;
}虽然我已经注意到只创建了这个类的一个实例,但是我得到了数据库被锁定的消息的SqlLiteDatabaseLockedException。我想实现双检查锁定技术,但它似乎可以在多核环境中刹车。那么,什么是最好的实现,以确保此异常不会重复在我的应用程序。
注意事项:其他事务方法(插入、删除、..)不是同步的。
Question2 :使事务方法同步会有好处吗?
发布于 2013-08-07 10:28:57
如果您使用的是android-s DatabaseHelper,数据库可能已经被DatabaseHelper打开了。
尝尝这个
private static DatabaseHelper _myDatabaseHelper = null;
public static MasterDatabase getInstance() {
if (_myDatabaseHelper == null) {
_myDatabaseHelper = new MyDatabaseHelper();
}
return _myDatabaseHelper..getWritableDatabase();
}https://stackoverflow.com/questions/18099796
复制相似问题