【问题标题】:Persistent UI failed to open file - error in xcode osx持久 UI 无法打开文件 - xcode osx 中的错误
【发布时间】:2014-03-12 13:58:52
【问题描述】:

如何解决以下错误以及出现此错误的原因。
持久性 UI 无法打开文件 file://localhost/Users/ev_mac13/Library/Containers/com.xxxxx.testData/Data /Library/Saved%20Application%20State/com.xxxxx.testData.savedState/window_5.data:打开的文件太多 (24)

我在我的应用程序中使用 sqlite 数据库。在运行应用程序之间出现此错误。

编辑:数据已被提取并用于集合视图和数组控制器。如果出现上述错误,则无法打开 sqlite 数据库。

-[SQLiteDBConnection executeQuery:] 中的断言失败,/Users/admin/Desktop/march14/feb22/ToolBox/ToolBoX/DBConnection/SQLiteDBConnection.m:186 2014-03-15 10:25:04.339 ToolBoX[2939:303] 创建添加语句时出错。 '无法打开数据库文件'

编辑 #2:

我刚刚在 osx 终端中输入了lsof,它显示了太多的 sqlite 连接并关闭了所有连接。现已修复。

【问题讨论】:

  • 一次可以打开多少个文件?试试sysctl kern.maxfiles

标签: macos cocoa sqlite persistent savestate


【解决方案1】:

我在我的主文件夹中遇到了权限错误。

但是,如果您直接使用 SQLite 包装器,则可能会泄漏(如内存泄漏)数据库/连接实例和/或在完成后没有正确关闭它们,这意味着每次打开新连接时都会打开数据库被触及。如果您还没有熟悉 Instruments(特别是“Leaks”工具),那么如果您仍然卡住,请发布结果。

【讨论】:

  • “我的主文件夹中的权限错误” - 如何检测和解决?
  • 对于其他 StackExchange 站点来说,这更像是一个问题,但简短的是:运行磁盘工具,选择卷,然后运行修复权限。
  • 我仍然收到上述错误,即使我删除了从数据库中获取的代码。
  • 我点击了这个链接http://www.cocoabuilder.com/archive/cocoa/122202-cannot-load-interface-builder-file.html。我的数据库文件在终端中被列出了 7000 多次。
  • 感谢您的宝贵时间。最后我的问题得到了解决。创建了太多的 sqlite 连接。这就是我遇到这些问题的原因。现已修复。
【解决方案2】:

可以在终端试试:

xcode-select --rest

【讨论】:

    猜你喜欢
    • 2019-08-28
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    • 2014-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多