Far*_*ukh 5 android android-sqlite
我正在开发一个应用程序,我必须使用多线程.我有一个单一实例的SQLiteOpenHelper类在我的应用程序,我有方法来打开和关闭数据库和一些方法插入和获取数据.
现在,我的问题是,我在打开数据库第一线,并在同一时间开始交易第二个线程也得到了打开的数据库对象,并开始交易.
第一个线程完成其进程并关闭另一侧的数据库我的第二个线程正在工作,第二个线程获取数据库已关闭.
它的一些逻辑问题请有人帮我解决这个问题,我怎样才能以正确的方式处理数据库的关闭.
提前致谢
我的应用程序中有一个 SQLiteOpenHelper 类的单个实例,其中有打开和关闭数据库的方法以及一些插入和获取数据的方法。
仅当完全完成数据库操作时才应关闭数据库,例如当创建这些线程的活动或服务被销毁时。
永远不关闭数据库也不是不可能的。如果你实现了ContentProvider,你将永远不会关闭你的数据库。虽然这可能会导致 LogCat 中出现有关泄漏打开的数据库句柄的警告,但 SQLite 的事务性质意味着未能关闭数据库不应导致任何特定问题(例如,未能刷新缓冲区)。
| 归档时间: |
|
| 查看次数: |
700 次 |
| 最近记录: |