阅读中的数据赛车形式是openMP共享内存

时间:2012-04-16 20:48:55

标签: c++ openmp shared-memory

据我所知,在openMP编程中,写入共享变量的数据需要特定的仪式来防止数据竞争条件。但是,从一个可变场景中纯粹阅读,是否可能发生竞赛条件?

2 个答案:

答案 0 :(得分:0)

在纯粹的阅读场景中,不可能有竞争条件。只有在写入时才会在读取中出现竞争条件,因为它不会确定您将要读取的内容(它可能是您读取的旧值或新写入的值)。

答案 1 :(得分:0)

虽然并发读取内存位置是安全的,但是一般来说,从数据结构中同时读取可能会导致竞争,如果读取更新某些内部状态。两个示例是splay树(在读取时进行自我调整),以及保持读取内部统计信息的数据结构。