UPC:指向本地内存的共享指针

时间:2017-04-28 19:42:42

标签: upc

我正在为高性能计算课程学习统一并行C语言。

有人可以解释为什么"不推荐"有一个指向本地内存的共享指针?

我能想到的唯一原因是悬挂指针。

请参阅参考图片:sharedpointer_to_local

[shared_pointer_to_local[2]

来源: http://hpac.rwth-aachen.de/teaching/sem-lsc-13/UPC.pdf http://www.cs.fsu.edu/~engelen/courses/HPC/Languages.pdf

1 个答案:

答案 0 :(得分:1)

你是对的 - 原因本质上是悬挂指针的可能性。

更具体地说,指向本地的指针通常只对创建它的线程有意义,因此将该值放在共享数据结构中通常没有意义,因为其他线程只能将其视为不能透明的值被安全地解除引用。此外,无法查询关联性信息的指向本地值的指针,因此更广泛的数据结构或算法需要以某种方式维护该关联性信息,以便知道指针有效使用的位置。

相关问题