您是否打算防止同时读取/写入由多个进程打开的文件映射内存?
例如,如果内存中的一个字符串是“hello”并且一个进程在其上写入“hi...”,我是否正确地说另一个同时读取的进程可能会得到一个像“hi.lo”这样的间歇值?
基本上我要问的是人们如何再次保护这些东西。你打算使用信号量吗?这些是否跨流程工作?
您是否打算防止同时读取/写入由多个进程打开的文件映射内存?
例如,如果内存中的一个字符串是“hello”并且一个进程在其上写入“hi...”,我是否正确地说另一个同时读取的进程可能会得到一个像“hi.lo”这样的间歇值?
基本上我要问的是人们如何再次保护这些东西。你打算使用信号量吗?这些是否跨流程工作?
是的,如果您需要防止多个写入者或避免读取部分更新,那么每个进程使用的共享互斥量/信号量将用于控制对共享数据的访问。
在这篇 MSDN 文章的底部有一些示例代码:Memory-Mapped Files in .NET 4.0