【发布时间】:2018-05-23 18:42:03
【问题描述】:
我有一个带有函数的第三方库,它对指定的数据进行一些计算,并将结果写入由文件名指定的文件:
int manipulateAndWrite(const char *filename,
const FOO_DATA *data);
我无法更改此函数,或在我自己的函数中重新实现计算,因为我没有源代码。
为了获得结果,我目前需要从文件中读取它们。我宁愿避免写入和读取文件,而是将结果获取到内存缓冲区中。
我可以传递一个指示写入内存的文件路径,而不是 文件系统?
【问题讨论】:
-
是的,使用 RAM 驱动器路径。相关:stackoverflow.com/questions/36706602/…
-
在哪个操作系统上????
-
在 Linux 和 Windows 上都存在创建 RAM 磁盘并从该 RAM 磁盘传递文件路径的解决方案。它不写入磁盘。请注意,如果文件很小,如果立即重新读取并删除,则写入临时目录根本不会写入磁盘。
-
这个第三方库的设计有问题。允许写入
FILE *对象将为您提供更多选择。 -
@Jean-FrançoisFabre 是的,但在 Debian 和衍生产品上,您可以轻松地读取/写入 /dev/shm