所以它的主题很大,但我正在寻找有效的方法,但有些同时容易,我不是在寻找最大的效率。 注意:对我而言,一次只有一个结构。
感谢。
答案 0 :(得分:1)
“一次从文件中读取一个结构将不会有效(导致许多读取/写入硬盘驱动器)”
这是一个很大的假设,这可能是错误的。或者至少没有你想象的那么糟糕。
C标准I / O库执行缓冲,操作系统也是如此。
从明确的程序组织的角度编写程序以便于在任何单位进行数据传输,并让缓冲完成聚合工作以提高效率。
即使程序表现不佳,我也不会得出结论,它需要进行重大调整。调整一些系统参数可能是最佳选择。或者只是几行特定于平台的代码,以提示可以提高性能的操作系统。在POSIX平台上,查看您是否具有函数fadvise
。 (您可以使用FILE *
函数从fileno
流中检索文件描述符。)