Sun Studio 12 Update 1:OpenMP API 用户指南

5.5.4 数据作用域属性

OpenMP 3.0 规范版本 3.0(第 2.9 节中)介绍了如何确定在并行、任务和工作共享区域中引用的变量的数据共享属性。

构造中引用的变量的数据共享属性可以是以下属性之一:预先确定显示确定隐式确定。具有显式确定数据共享属性的变量是那些在给定构造中引用,并在构造的数据共享属性子句中列出的变量。具有隐式确定数据共享属性的变量是那些在给定构造中引用、不具有预先确定数据共享属性,并且不在构造的数据共享属性子句中列出的变量。

有关如何隐式确定变量的数据共享属性的规则可能并不总是很直观(请参见5.2 数据环境)。因此我们建议,要避免出现任何让人感到惊讶的现象,程序员应显式确定任务构造中引用的所有变量的作用域(使用 defaultsharedprivatefirstprivate 子句),而不是依赖于 OpenMP 隐式作用域规则。