windows - 共享内存段中某个位置的原子比较和交换

标签 windows shared-memory atomic compare-and-swap

我想了解使用 InterlockedCompareExchange() 是否存在任何隐藏问题更改使用 CreateFileMapping(INVALID_HANDLE_VALUE 创建的段中的内存) 并在多个进程之间共享。

换句话说,进程是否可以依赖 CAS 语义来操作它们共享的内存块?我想他们可以,只是想确认一下。

谢谢

最佳答案

CAS 操作将与该内存完美配合。文件映射 API 和虚拟内存系统完成了将内存映射到多个进程的所有艰巨工作。当您接触到内存时,您已经无法将它与任何其他内存区分开来。

关于windows - 共享内存段中某个位置的原子比较和交换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13711768/

相关文章:

java - AtomicInteger 的 getAndIncrement 实现

iphone - 通过 Windows VPN 的 Bonjour

php - 在 Windows 上使用 XAMPP 安装 PHP YAML 扩展

java - synchronized(new Object()) 的用例

具有共享数据的 Python 多处理池

c++ - 如何实现不溢出的原子引用计数器?

c++ - 与 2012 年相比,申请不断关闭

windows - Git vim 编辑器配置

python - 使用 Django 在后端缓存数据(可扩展应用程序)

arm - 在 cortex-m3 上读取 64 位 volatile 变量