FMDB支持的事务类型
 
在数据库中,事务可以保证数据操作的完整性。当存在大量并发操作,容易出现死锁问题。在SQLite中,为了解决该问题,提供三种事务模式,分别为DEFFERED、IMMEDIATE、EXCLUSIVE。
 
在DEFFERED模式事务中,事务开始执行时,不预先获取任何锁。当进行读操作,获取SHARED LOCK锁;当进行第一次写操作,获取RESERVED锁。
在IMMEDIATE模式事务中,事务开始执行,就获取RESERVED锁。这时,其他连接只能进行读操作。
在EXCLUSIVE模式事务中,事务开始执行,就获取EXCLUSIVE锁。这是,其他连接无法进行任何读写操作。
 
而FMDB支持DEFFERED和EXCLUSIVE两种模式。当使用beginTransaction方法,使用EXCLUSIVE模式,适合数据库读写较少的情况。当使用beginDefferedTransaction方法,则使用DEFFERED模式,适合读写频繁的场景。

最新文章

  1. RedisRepository封装—Redis发布订阅以及StackExchange.Redis中的使用
  2. 工作随笔——使用svnsync实时备份SVN版本库
  3. MQTT协议学习笔记
  4. 求一个全排列函数: 如p([1,2,3])输出:[123],[132],[213],[231],[312],[321]. 求一个组合函数 如p([1,2,3])输出:[1],[2],[3],[1,2],[2,3],[1,3],[1,2,3]
  5. 盘点PHP编程常见失误
  6. linux开源论坛
  7. 1:scrapy框架原理与环境搭设
  8. 关于eclipse几种插件的安装方法
  9. osx下快捷键相应符号
  10. zTree实现获取当前选中的第一个节点在同级节点中的序号
  11. 获取Ajax通信对象方法
  12. winfrom程序文本框第一次选中问题
  13. web api HttpResponseMessage的简单使用
  14. python pandas 基础理解
  15. Android简易项目--傻瓜式阿拉伯语输入法(Dummy Arabic Input)
  16. 【HAOI2014】遥感监测
  17. Nodejs如何把接收图片base64格式保存为文件存储到服务器上
  18. 【刷题】LOJ 6012 「网络流 24 题」分配问题
  19. Windows运行命令
  20. if 的一切

热门文章

  1. 常用排序算法的总结以及编码(Java实现)
  2. leetcode-15-basic-string
  3. Linux学习-备份的种类、频率与工具的选择
  4. vmware esxi 6.0 开启嵌套虚拟化
  5. private virtual in c++
  6. jmeter所有版本下载路径
  7. getattr、setattr、hasattr
  8. git status 下中文显示乱码问题解决
  9. 九度oj 题目1361:翻转单词顺序
  10. HDU——1062Text Reverse(水题string::find系列+reverse)