为什么我不能使用 Boost.Interprocess 设置从一个进程通过另一个进程创建的一些内存?
Why can't I set some memory created from one process through another using Boost.Interprocess?
这是服务器:
这是客户:
我创建了两个独立的 C++ 控制台应用程序,一个称为服务器,另一个称为客户端。服务器创建并共享内存,客户端主要读取它,但设置一些信令服务器退出。尽管客户端正确存在并进行了适当的内存检查,但服务器永远无法读取客户端设置的值,因此永远不存在!
请指教。
现在一切正常。这里的语法和对内存大小的理解有问题:
这个:
*(mem + region.get_size()) = '*';
应该是这样的:
mem[region.get_size() - 1] = '*';
这是服务器:
这是客户:
我创建了两个独立的 C++ 控制台应用程序,一个称为服务器,另一个称为客户端。服务器创建并共享内存,客户端主要读取它,但设置一些信令服务器退出。尽管客户端正确存在并进行了适当的内存检查,但服务器永远无法读取客户端设置的值,因此永远不存在! 请指教。
现在一切正常。这里的语法和对内存大小的理解有问题:
这个:
*(mem + region.get_size()) = '*';
应该是这样的:
mem[region.get_size() - 1] = '*';