首页 > 解决方案 > 是否有一种功能或方法可以删除文件映射的内容而不关闭它?

问题描述

我正在一个程序上实施 IPC。
我选择使用文件映射方法。

首先,我需要一个进程在我之前创建的内存块上写入一些数据。
然后,另一个进程访问此文件映射,读取内容并将新内容写入内存块。
最后,第三个进程访问文件映射并读取内容。

示例:
- 第一个进程写入“ UNLOCK ”。
- 第二个进程读取“ UNLOCK ”并在文件映射上写入“ LOCK ”。
- 第三个进程读取“ LOCKCK ”。

所以,我想在写入之前擦除文件映射内容。我对此一无所知,我发现的唯一解决方案是关闭文件映射,但我需要让它保持活力。
实际上,我发现纠正我的问题的唯一方法是写“ LOCK__ ”。(注意下划线指的是空格字符)
由于空格字符,单词的长度等于“ UNLOCK ”。

请问有删除文件映射内容的方法或功能吗?

下午。

标签: c++windowsipc

解决方案


推荐阅读