zoukankan      html  css  js  c++  java
  • android下db-journal文件作用

    在学习数据库sqlite的过程中,发现在源文件包里除了生成db类型的数据库文件,还生成了db-journal类型的同名文件

    查询网上资料后知道该文件是sqlite的一个临时的日志文件,主要用于sqlite事务回滚机制,在事务开始时产生,

    在事务结束时删除;当程序发生崩溃或者系统断电时该文件将留在磁盘上,以便下次程序运行

    时进行事务回滚。

    但是我创建数据库时将事务结束了,同时程序也没有崩溃,为什么还是会在磁盘上产生

    .db-journal文件呢?

    深入研究,发现这是sqlite生成日志文件的不同模式造成的,在android采用的这种模式下,

    .db-journal文件是永久的留在磁盘上不会被自动清除的,如果没有发生事务回滚那么.db-journal

    文件的大小为0,这样就避免了每次生成和删除.db-journal文件的开销。

    到此,所有的疑惑解开了。


  • 相关阅读:
    centos7下更新firefox
    Centos7宽带连接
    CAS和AQS
    java中锁的概念
    并发队列
    Callable和Future
    juc下的并发工具类和线程池
    死锁和线程安全的问题
    HashMap源码分析(java1.8)
    List集合框架面试题
  • 原文地址:https://www.cnblogs.com/rysinal/p/5834484.html
Copyright © 2011-2022 走看看