Xcode需要很长时间才能打印调试结果。

时间:2018-02-20 11:34:53

标签: swift xcode

当我在Xcode上调试时,在Xcode控制台上打印po的结果大约需要30秒或更长时间。

不幸的是,这只是我在这个问题上的一些信息。

然而,还有另一点需要考虑。此问题非常特定于项目。这是因为当我将po用于同一Macbook上的其他项目时,它会立即生效。此外,这个特殊项目在所有其他Macbook和所有团队中都很慢。

我用Google搜索了,但没有找到相关的答案。我发现使用print(...)而不是在Xcode控制台上使用调试很容易。但是,它的工作量更大,需要进行大量的重建。

2 个答案:

答案 0 :(得分:0)

我有几个解释:

  1. 有很多代码(一定数量的代码后Xcode速度变慢)同时确保您的print语句位于页面顶部。 Xocde从上到下。

  2. 你的Mac很慢。一些Mac使用后的一些Mac减速。此外,如果你有Mac mini或Air,它们比其他人慢。

  3. Xcode Beta。如果您使用的是Xcode测试版,则可能存在错误。

  4. 如果这些都没有给你提供更多信息,我会提供其他解决方案。

答案 1 :(得分:0)

快捷键:

尝试使用此解决方案,它可以减少调试模式下的日志时间。

步骤1:创建一个名为Utils.swift的新文件(文件名称取决于您的偏好)

第2步:在文件中添加以下代码

import Foundation
import UIKit

struct Utils { }
public func PrintLogs(_ message: Any, file: String = #file, function: String = #function, line: Int = #line) {
    #if DEBUG
    let className = file.components(separatedBy: "/").last ?? ""
    let classNameArr = className.components(separatedBy: ".")
    NSLog("\n\n--> Class Name:  \(classNameArr[0]) \n--> Function Name: \(function) \n--> Line: \(line)")
    print("--> Log Message: \(message)")
    #endif
}

用法:致电PrintLogs("Hello")而不是print("Hello")

示例输出:

--> Class Name:  HomeViewController 
--> Function Name: logTest() 
--> Line: 81
--> Log Message: Hello