Xcode使用大内存,占用内存中的所有内存

时间:2012-09-06 07:36:31

标签: xcode macos

我在我的mac上使用Xcode,它有8GB内存。当我打开Xcode并且不打开任何项目并等待大约2分钟时,Xcode会占用内存中的所有内存,(4GB,5GB ......)

有人可以告诉我为什么以及如何解决这个问题?

6 个答案:

答案 0 :(得分:5)

我也一直在研究这个问题。我认为一个解决方案(我需要将用户justin归功于)是为Xcode设置多个配置值。它应该在退出Xcode之后完成。

在终端中执行以下命令:

defaults write com.apple.dt.XCode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 4

defaults write com.apple.dt.XCode IDEIndexDisable 1

这将阻止索引并减少编译任务的数量。这让我的Xcode给我留下了一些实际工作的RAM。

删除这些设置,例如编制索引:

defaults delete com.apple.dt.XCode IDEIndexDisable

如上所述,这在this question中进行了讨论。

此外,清理Xcode缓存允许降低RAM被吃掉的速度。 (在〜/ Library / Developer / Xcode / DerivedData - 它位于您的家庭目录,也可能是隐藏的,因此使用终端更容易访问)。

编辑/更新:

显然,这有助于解决内存问题(尽管仍需要定期重启Xcode)。然而,你正在失去一些有趣的东西:即时错误检查,控制 - 拖放IBOutlet添加到控制器头(需要以旧的方式 - 输入然后连接),可能还有一些其他有用的功能,带索引。所以要注意。

答案 1 :(得分:2)

找到了临时解决方案here

每隔一段时间运行一次该命令,这有助于我的8GB

答案 2 :(得分:2)

我很惊讶我没有在这里读到真正的答案/问题,尽管没有解决方案。我看到你提到你甚至不必打开一个项目,但通常在使用故事板时会出现问题。我已经证实了这一点,向Apple发送了示例,提交了错误报告,等待新版本,还没有。在编辑故事板视图时,某个地方会出现泄漏。如果您正在编辑原始代码,您将永远不会看到ram使用量增加,但是第二次开始编辑具有多个视图的故事板并且会产生问题。我目前运行24GB内存,在编辑故事板中的视图时可以在不到一个小时的时间内使用它。像其他人提到的那样,唯一的解决方案是重启Xcode。简单地关闭项目是不够的。

答案 3 :(得分:1)

我遇到了同样的问题,但与Interface Builder和Storyboard访问相关。

经过一番思考后,很明显,在我的项目中的Storyboard文件放大到一定量(目前磁盘上大约1.5MB)后,XCode和IB出现了问题。

在某些(例如IBLabel)对象中更改文本时,每个字母需要大约0.5秒,对于6个字符的单词,更改需要3秒。这让我感到很沮丧。

XCode restart帮助并释放所有占用的内存......直到下一个工作会话。

我有强烈的印象,IB在每次更改后都会生成撤消缓冲区(例如更改单个字母),因为每次更改后,内存占用量会扩大约20 MB(可能是RAM中的故事板大小,磁盘上为1.5 MB)。

在XCode重新启动后,撤消缓冲区已经消失,一些内存已相应释放。

我想知道一种限制撤消缓冲区大小的方法,并用较小的大小进行测试。

配置为:Mac Mini,4 GB RAM,OS X 10.8.3,XCode 4.6,XCode 4.6.1,XCode 4.6.2

我目前回到XCode 4.5并且情况似乎有点好但问题仍然存在。我认为这个版本的功能少于4.6,根据这种差异,它使用的内存较少。

好的,看起来XCode 4.5实际上可以释放Interface Builder分配的一些内存。

2013年5月21日更新: 我从4GB升级到Mac Mini 2011 8GB RAM并没有发现问题。

答案 4 :(得分:0)

没有真正解决这个问题的方法。

在很多网站上讨论过。帮助我解决这个问题的唯一解决方案是, 现在重新启动XCode。我不认为这个问题会有真正的解决方案。

答案 5 :(得分:0)

XCode是一个真正的记忆怪物,如果你尝试使用其中一种“乐器”,它会吃得更多。根据任务的不同,有些人没有那么多问题,特别是如果他们有更多的记忆。

我个人开始使用2GB而XCode只是......痛苦

升级到8GB后,我不得不每隔一段时间重新启动

我听说16GB的人不会抱怨这么多,只需要每天重启一次或两次XCode。

我觉得你在2分钟后用完全部记忆对我来说很奇怪。我可能会猜到你的某些设置会使所有XCode泄漏最严重。您是否尝试删除所有〜/ Library / Developer文件夹并设置文件?