Xcode 6.3代码完成速度太慢

时间:2015-04-11 15:26:58

标签: swift code-completion xcode6.3

我刚刚将Xcode更新为6.3版。我正在使用一些导入的Objective C代码在Swift中开发一个项目。我也使用Cocoapods。

我对Xcode 6.3 beta也有同样的问题。我已经看到并尝试了所有其他StackOverflow的答案而没有运气。

到目前为止,我已经尝试过:

  • 在Xcode和/或Mac重新启动时删除~/Library/Developer/Xcode/DerivedData~/Library/Caches/com.apple.dt.Xcode

  • 卸载Spotify。

  • 不使用“+”连接运算符。

  • 将部署目标设置为8.1。

我应该提一下,Objective C代码快速自动填充,并且在索引Swift代码之前也是如此。弹出建议的 Esc 按钮具有相同的延迟。

5 个答案:

答案 0 :(得分:12)

Whole Module Optimization设置为Yes是我项目中的解决方法。

enter image description here

在我的例子中,该项目有5个模块,在这里命名为A,B,C,D和E,其中依赖关系是A - > B - > C - > D,并且A到D中的每一个都指向E.使用Xcode 6.3和6.3.1,编译模块E和D很好,但是编译C需要更长的时间,编译B和A需要更长的时间,比如10分钟。更改项目设置后,编译所有模块只需不到一分钟。它看起来比使用Xcode 6.2进行编译要快。

<强>参考文献:

答案 1 :(得分:2)

尝试在更新后清除项目派生数据 窗口 - 项目 - 您的项目 - 派生数据 - 删除...
在我的情况下,代码完成在更新后效果更好。

答案 2 :(得分:0)

我在GameScene Class上使用了扩展程序并且加速了所有内容。

我从我的gameScene Class中取出了三个大型函数,并为它们制作了三个单独的扩展。

如果上述方法都不奏效,这可能是最简单的解决方案。

答案 3 :(得分:0)

我的大型项目的代码完成时间从几分钟缩短到大约 2-3 秒。

观察:虽然代码完成考虑了项目中的“一切”,但在一个文件中执行时代码完成非常慢,而在另一个文件中执行时非常好。

慢文件的属性是一个表达式(用数据填充数组)超过几行代码。

将带有这个表达式的方法拆分为 2 个文件中的 3 个方法(而不是 1 个方法中的 3 个表达式),我的代码完成速度从几分钟缩短到几秒钟。

似乎存在代码完成变慢的阈值。这不是一个渐进的事情,代码完成变得越来越慢。它或慢或快。您不必将代码拆分为许多方法。低于门槛就够了。

这种行为表明资源受限,可能是内存。我现在的机器有 16 GB 内存。

这就是你要做的:

  • 检查一个文件中的代码完成是否比其他文件慢得多。
  • 在慢速文件中查找大型或复杂的表达式。
  • 将大表达式的一部分提取到一个或多个单独的方法中。可能不需要很多提取物。从一个开始。

答案 4 :(得分:-2)

此问题似乎在Xcode 6.3.1(昨天发布)中得到修复。