C++打印到终端显着减慢代码?

use*_*171 11 c++ printing terminal performance

我有一个代码,我目前在终端上打印了很多诊断消息.有没有人知道这会减慢我的代码的速度?通过将输出传递给文件,我会获得大幅度的提升,例如,而不是运行:

./my_program
Run Code Online (Sandbox Code Playgroud)

我跑

./my_program > output.log
Run Code Online (Sandbox Code Playgroud)

另外,通过使用ofstream替换cout并直接写入文件,我可以进一步提高速度吗?

编辑:我们假设我写的是/ dev/shm,磁盘访问速度并不是真正的问题.

Dan*_*ani 8

是的,渲染到屏幕比写入文件需要更长的时间.
在Windows中,它甚至更慢,因为程序渲染不是正在运行的程序,因此在进程之间不断发送消息以获取它.
我想在linux中也是如此,因为虚拟终端与运行的进程不同.