可能重复:
Do I need to disable NSLog before release Application?
在我的iPhone应用程序中有超过20个类。每个我使用NSLog打印这么多的值。当我在模拟器上运行我的应用程序时它有点低,因为一些NSLog(特别是打印NSData等)
如果我完成应用程序并在制作ipa文件后在设备上运行它会慢吗? 或者我应该从类中评论所有NSLog?
答案 0 :(得分:5)
答案 1 :(得分:1)
而不是NSLog在任何地方都使用DLog。在测试和调试时,您将获得调试消息。当您准备发布测试版或最终版本时,所有这些DLog行自动变为空并且不会发出任何内容。这样就不需要手动设置变量或评估NSLog。选择构建目标需要处理它。
答案 2 :(得分:0)
NSLog会影响速度,因为阻止,会导致IO 。它在当前线程中同步运行。 更好的是异步! - 就像cocoalumberjack的DDLog,它是一个没有阻止的替代品。 [仍然可以导致IO,请参阅有关级别的下一个信息]
ALSO DDLog知道日志级别。例如。信息,警告&错误: 在发布模式下,默认情况下将其设置为错误(但可以通过UserDefault值进行更改!)
警告和信息未被记录,这使得它只会导致非常小的开销
DDLog与 log4j 类似,但对于objC!