我正在使用一个API,它FILE *正在使用它来创建内存中的数据缓冲区:
std::shared_ptr<FILE> f(tmpfile(), fclose);
write_to_file(f.get());
rewind(f.get());
auto data = make_file_buffer(f.get());
return data;
Run Code Online (Sandbox Code Playgroud)
这有效,但比写入内存缓冲区要慢.
是否有可能将其写入内存文件并避免读/写磁盘(如stdin/stdout/stderr读/写控制台)?
注意:我使用的是Linux,因此可以访问Linux和POSIX API.