Ran*_*ku' 7 sqlite android transactions
当在做Android的交易,也有beginTransaction()和beginTransactionNonExclusive()方法,从API 11起。
对我来说,文档中并不清楚我的应用程序是否仅针对 API 11 及更高版本的设备,我应该将其beginTransactionNonExclusive()用于我的应用程序中的所有事务。有什么缺点吗?
还提到,如果我理解正确,为了beginTransactionNonExclusive()正常工作,数据库必须启用预写日志记录。
我试图寻找一些关于此的文章,但我无法从谷歌找到任何关于此的内容,我发现这篇文章看起来很棒,但它是日文的。
任何指导何时以及如何beginTransactionNonExclusive()使用的帮助将不胜感激。
小智 3
我认为你应该beginTransactionNonExclusive与 一起使用enableWriteAheadLogging。
根据文档:
每当多个线程同时访问和修改数据库时,启用预写日志记录是一个好主意。然而,预写日志记录比普通日志记录使用更多的内存,因为同一个数据库有多个连接。因此,如果数据库仅由单个线程使用,或者优化并发性不是很重要,则应禁用预写日志记录。]
| 归档时间: |
|
| 查看次数: |
2584 次 |
| 最近记录: |