Iphone 在控制台/文件中打印日志语句

Iphone 在控制台/文件中打印日志语句,iphone,objective-c,ios,cocoa-touch,nslog,Iphone,Objective C,Ios,Cocoa Touch,Nslog,我只是想确认使用NSLog语句在控制台上打印日志是否会降低应用程序的速度?另外,如果我不登录控制台,而是将它们记录在一个文件中,它的行为是否也会相同。是的,在代码的内部循环中将许多日志行打印到控制台,特别是通过USB调试器连接,会在一定程度上降低执行速度。(从应用程序的角度来看,USB I/O可能会阻塞) 至于登录到文件是否更快,iOS会使用NSLog语句,并将它们过滤到设备的整个控制台日志中,因此它们已经进入磁盘,但这可能会更智能地进行缓冲,因为这发生在生产系统上 您是否应该登录到文件,这取决

我只是想确认使用NSLog语句在控制台上打印日志是否会降低应用程序的速度?另外,如果我不登录控制台,而是将它们记录在一个文件中,它的行为是否也会相同。

是的,在代码的内部循环中将许多日志行打印到控制台,特别是通过USB调试器连接,会在一定程度上降低执行速度。(从应用程序的角度来看,USB I/O可能会阻塞)

至于登录到文件是否更快,iOS会使用
NSLog
语句,并将它们过滤到设备的整个控制台日志中,因此它们已经进入磁盘,但这可能会更智能地进行缓冲,因为这发生在生产系统上


您是否应该登录到文件,这取决于您的目标。如果您正在设备上计时,只需在计时时取出日志即可。如果在定时时需要日志数据,请考虑在操作期间缓冲内存中的一组日志字符串,然后再在某个地方刷新它们。