我的内存映射文件在C#中是如何工作的理解是,在拷贝数据结果每一个要求。 举例来说,如果你有一个大的数据结构,坚持为一个文件,使用内存映射文件会导致内存映射到RAM中的实际文件,和居住在GC堆一次性复制它从文件中读取。
我假设这是因为指针和GC不相处在一起一般来说。
那么,有没有解决这个办法吗?
- 或许通过一些混合模式C ++,可以暴露在存储器映射的数据被管理的API?
- 什么不安全的C#直接的指针操作?
我试图解决的普遍问题是共享多个进程之间存在较大的数据结构。 数据结构被用于回答一小部分可以被暴露为一个简单的API“问题”(即,基本上,一群其他数据中的一个高度专业化的索引)。
在一个侧面说明,不这样做的.NET API无用的“共享大量数据”的情况?