我正在制作一个下载器Android
。为了允许在多个活动之间共享数据库,我创建了WritableDatabase
.
下载某些内容的每个线程需要将总共下载多少数据写入数据库。由于多个线程将访问此实例,因此synchronized
在将值输入数据库时是否需要使用代码块?
我正在制作一个下载器Android
。为了允许在多个活动之间共享数据库,我创建了WritableDatabase
.
下载某些内容的每个线程需要将总共下载多少数据写入数据库。由于多个线程将访问此实例,因此synchronized
在将值输入数据库时是否需要使用代码块?
从多个线程中使用是安全的SQLiteDatabase
,但默认情况下,每个操作都会阻塞其他操作。要启用并发更新,请使用enableWriteAheadLogging
. 阅读更多http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#enableWriteAheadLogging()
就像 Readers/Writers 问题一样,当多个线程从数据库中读取时没有问题,但是当它们尝试写入时,您必须使用同步块来允许线程安全操作。