在追加模式下打开一个文件以在c++
中写入会为整个文件分配内存吗?
假设我有一个文件,然后我以附加模式打开,在最后的附加之后,文件是34 GB
。现在,如果文件写入操作频繁,并且由不同的任务完成,每次都会打开文件以向其添加一些数据。就在最后写入之前(当文件大小大约为30 GB
时),操作系统会为打开文件分配30 GB
吗?
简短回答:否。在任何模式下打开文件都不会为整个文件分配内存。您可能会将其与内存映射文件混淆,而内存映射文件可以而且通常会这样做。