gpt4 book ai didi

c++ - 管道与 tmfiles。什么更好,为什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:40:04 25 4
gpt4 key购买 nike

我想编写程序来创建子进程并将其 stdout 和 stderr 流重定向到父进程。那么为了获得良好的性能,tmpfile() 或 pipe() 的最佳选择是什么,为什么?

最佳答案

尽可能使用pipe,除非您预计大量输入会在流中堆积而不被读取。管道将数据保存在 RAM 中,临时文件需要文件系统操作。文件上的 fdsync 比管道上的要昂贵得多。管道也不太容易受到竞争条件引起的安全问题的影响。

如果您的应用程序无法使用管道语义(其输出需要文件系统路径或类似问题),请尝试使用“命名管道”(也称为 FIFO)。

关于c++ - 管道与 tmfiles。什么更好,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5141970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com