Tag: shared memory

我们如何使用共享内存段与两个托管进程之间的“对象”共享数据?

如何使用共享内存段在两个托管进程之间共享数据? 我在C ++ / CLI代码中使用”object”来与其他进程中的其他内存部分共享数据。 我正在使用以下代码段。 #define BUFFER_SIZE 32768 #pragma data_seg (“.SHAREDMEMORY”) bool _Locked = false; bool _Initialized = false; unsigned char[10000] data = NULL; #pragma data_seg() #pragma comment(linker,”/SECTION:.SHAREDMEMORY,RWS”) 但我需要它: #pragma data_seg (“.SHAREDMEMORY”) bool _Locked = false; bool _Initialized = false; object^ _object = nullptr; #pragma data_seg() #pragma comment(linker,”/SECTION:.SHAREDMEMORY,RWS”) 它说”global or static variable may not […]

从内存映射文件中读取问题

我试图在我的应用程序(特别是Windows服务)中实现内存映射文件,然后使用C#表单从服务写入的MMF读取。 不幸的是,我似乎无法从MMF中读取任何内容,更重要的是,表单似乎永远不会找到服务创建的MMF。 下面是代码片段,概述了我在做什么,任何人都可以看到我做错了什么或能够指出我更好的方向? 服务: private MemoryMappedFile mmf = MemoryMappedFile.CreateOrOpen(“AuditStream”, 1024 * 1024); private Mutex mutex = new Mutex(false, “MyMutex”); byte[] msg = new byte[1]; var view = mmf.CreateViewStream(0, 1); byte[] rmsg = new byte[1]; for (int i = 0; i < 400; i++) { mutex.WaitOne(); for (int j = 0; j < msg.Length; j++) { […]

完全托管的共享内存.NET实现?

我正在寻找.NET的免费,完全托管的共享内存实现(P / Invoke是可以接受的,混合C ++ / CLI不是)。