【问题标题】:Database Open/Close Frequency数据库打开/关闭频率
【发布时间】:2016-11-27 11:32:24
【问题描述】:

我正在开发一个聊天应用程序,在聊天中我们从服务器获得了大量更新。我们还将更新保存到本地 SQLite 数据库文件中。

有人可以建议我,在每次插入/更新之后,我们应该关闭数据库还是在实际需要时关闭数据库?

【问题讨论】:

    标签: android ios sqlite android-sqlite


    【解决方案1】:

    关闭连接会丢弃页面缓存,并要求检查架构版本并在下次打开时重新解析整个架构。

    在大多数应用程序中,没有足够的数据库访问权限,因此不断重新打开数据库的开销实际上会变得很明显。但这不是在您的应用中添加无用代码的理由。

    请注意SQLiteDatabase 对象是引用计数的。因此,如果您使用全局打开帮助程序实例,您可以通过额外的 getWritableDatabase() 调用保持数据库打开,即使您的所有其他代码都调用 close()

    【讨论】:

      【解决方案2】:

      您应该在每次查询后关闭连接。 在.net(和大多数其他框架)中,SQLConnections 无论如何都存储在后台。它不会影响您的运行时。

      另外:连接池是你的朋友。

      【讨论】:

      • 这个问题不是关于 .NET 或“大多数其他框架”,而是关于 Android 和 iOS。
      猜你喜欢
      • 2016-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-18
      • 2019-12-31
      • 2017-02-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多