有没有办法防止Xcode控制台日志溢出并锁定会话?

有没有办法防止Xcode控制台日志溢出并锁定会话?,xcode,Xcode,我有一个Mac应用程序(这是一个手机应用程序的测试平台),它将大量的输出输出到控制台日志中。大多数情况下,这是我想要的,但有时我运行大型“批处理”运行,控制台日志基本上会被填满,Xcode会被锁定。我发现防止这种情况发生的唯一方法是监视作业,每隔30秒左右按一次“清除”,希望我不会太接近结束,以至于清除给出运行结果的50行左右的最后一行 是的,我可以遍历代码并减少输出的行数,但是不这样做有几个原因(不仅仅是因为懒惰) 有人知道如何告诉Xcode将控制台作为某种“旋转缓冲区”进行维护,不时清理旧的

我有一个Mac应用程序(这是一个手机应用程序的测试平台),它将大量的输出输出到控制台日志中。大多数情况下,这是我想要的,但有时我运行大型“批处理”运行,控制台日志基本上会被填满,Xcode会被锁定。我发现防止这种情况发生的唯一方法是监视作业,每隔30秒左右按一次“清除”,希望我不会太接近结束,以至于清除给出运行结果的50行左右的最后一行

是的,我可以遍历代码并减少输出的行数,但是不这样做有几个原因(不仅仅是因为懒惰)


有人知道如何告诉Xcode将控制台作为某种“旋转缓冲区”进行维护,不时清理旧的东西,使其不会填满吗?

您可以编写自己的旋转缓冲区实现,并记录到其中,而不是使用printf

或者,如果您不想替换所有的printf:

 #define printf rotatingPrintf
也许可以编写一个具有旋转缓冲区的命令行工具,然后通过管道将应用程序的输出传输到该工具。您可以从以下命令行启动GUI应用程序:

 $ /Applications/Foo.app/Contents/MacOS/Foo