【发布时间】:2011-01-14 19:45:30
【问题描述】:
我最近在using volatile 上提出了一个问题,并被指示阅读英特尔和其他人关于内存屏障及其用途的一些非常 信息丰富的文章。读完这些文章后,我变得很偏执。
我有一台 64 位机器。从多个线程 memcpy 到相邻的、非重叠的内存区域是否安全?例如,假设我有一个缓冲区:
char buff[10];
一个线程将内存存储到前 5 个字节,而第二个线程复制到最后 5 个字节是否总是安全?
我的直觉反应(和一些简单的测试)表明这是完全安全的,但我无法在任何地方找到可以完全说服我的文档。
【问题讨论】:
标签: c++ multithreading memcpy