我想确保以下内容不会影响我的流程:
Solaris 程序大量写入标准输出(通过 C++ wcout 流)。输出用于跟踪,因此在测试和分析期间,程序员/测试人员可以轻松观察发生的情况。但是该程序实际上是一个服务器进程,因此在生产版本中它将作为一个没有附加控制台的恶魔运行,并将所有跟踪输出写入文件。
我假设对于没有控制台的程序,stdout 被重定向到 nul,在这种情况下,我想一切都很好。但是,我想确保 stdout 输出没有在某处缓冲,这样在足够的运行时间之后,我们可能会遇到内存或磁盘空间问题。
注意:我们不能将跟踪输出重定向到文件,因为这会变得太大。相反,我们自己的文件跟踪机制确保创建新文件并删除旧文件,以始终保持一定数量的跟踪,而不是更多。