附加到MemoryMappedFile?

时间:2010-11-18 05:09:52

标签: .net file memory-mapped-files

也许我从根本上误解了内存映射文件的工作方式但是,当我使用MemoryMappedFile时,如何附加到文件的末尾? CreateViewAccessor只允许我创建文件当前容量的视图

我可以使用底层的FileStream写到最后但不是那种打败使用MemoryMapping的目的吗? (我以为它会缓存并写入附加的磁盘)。另一种选择是缓存从缓存中写入和读取而不是用于附加数据的内存流。

只是想知道使用内存映射文件的常见做法正在增长,所以我不再重新发明轮子了

1 个答案:

答案 0 :(得分:0)

创建内存映射后无法更改大小。 您可以在创建地图时指定大小。见http://msdn.microsoft.com/en-us/library/dd987389.aspx

内存映射是某种先进的i / o技术。除非(1)本地图书馆要求,否则不应使用它; (2)您需要在性能关键环境中随机访问。在任何一种情况下,如果不了解本机(机器级)含义,就不应该使用它。