读书人

c# 能否读取由c++建立的内存映射文件解

发布时间: 2013-10-21 17:03:30 作者: rapoo

c# 能否读取由c++建立的内存映射文件
我有一个需要,计划使用如下的形式来实现。

C#软件作为客户服务软件存在。
C#的数据来自某个内存映射文件 。

c++部分负责整理数据,并且将数据整理到内存映射文件中。
c++建立的内存映射文件大小是:120Mb


现在需要c#访问由c++建立的内存映射文件。
C++建立的内存映射文件为global访问,理论上可以由同一个计算机的任意进程来访问。

问题来了
1这样的架构是否可行。
2c#的读取速度是不是很快。 内存 内存映射文件
[解决办法]
.Net 4有MemoryMappedFile类
具体运行时性能取决于你的内存大小和用户的可用内存大小,主板总线的速度等等。C#的不安全代码可以直接访问内存
[解决办法]
.net访问内存映射文件是基于window系统的api的,不存在“c++的、c#的、vb的内存映射文件”,这些编程工具都是在访问windows api。

读书人网 >C#

热点推荐