gpt4 book ai didi

c - 在 C 中打开性能

转载 作者:太空狗 更新时间:2023-10-29 14:52:52 26 4
gpt4 key购买 nike

我正在设计一个计划用 C 实现的程序,我对调用外部程序的最佳方式(在性能方面)有疑问。用户将向我的程序提供一个文件名,然后我的程序将以该文件作为输入运行另一个程序。然后我的程序将处理其他程序的输出。

我的典型方法是将其他程序的输出重定向到一个文件,然后让我的程序在完成后读取该文件。但是,我知道 I/O 操作非常昂贵,我想让这个程序尽可能高效。

我稍微看了看,发现了用于运行系统命令和获取输出的 popen 命令。这种方法的性能与我刚才描述的方法的性能相比如何? popen 只是将外部程序的输出写入临时文件,还是将程序输出保存在内存中?

或者,是否有另一种方法可以提供更好的性能?

最佳答案

在 Unix 系统上,popen 将通过内存管道传递数据。假设数据没有被换出,它就不会写入磁盘。在不修改被调用程序的情况下,这应该会为您提供尽可能好的性能。

关于c - 在 C 中打开性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4958939/

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