Поделиться через


firstprivate 2.7.2.2

firstprivate предложение содержит надмножество функциональных возможностей, предоставляемых private предложение.Синтаксис firstprivate предложение следующим образом:

firstprivate(variable-list)

Переменные, определенные внутри список переменных обладающее private семантика предложения, как описано в разделе Раздел 2.7.2.1 на странице 25.Инициализация или создание происходит, если она была сделана после в поток до выполнения потока конструирования.Для a firstprivate предложение в параллельной конструкции исходное значение нового закрытого объекта значение исходного объекта, расположенный непосредственно перед параллельной конструкции для потока, который встречает его.Для a firstprivate предложение on рабочий-совместно с помощью конструкций, начальное значение нового закрытого объекта для каждого потока, который выполняет рабочий-совместно с помощью конструкции значение исходного объекта, который существует до момента времени, что один и тот же поток рабочий-совместно сталкивается с помощью конструкции.Кроме того, для объектов C++, новый закрытый объект для каждого потока копии, построенная из исходного объекта.

Ограничения firstprivate предложение следующим образом:

  • Переменная, определенная в a firstprivate предложение не должно иметь неполный тип или ссылочный тип.

  • Переменная с типом класса, который определен как firstprivate иметь точно, выраженный конструктор копий.

  • Переменные, которые являются закрытыми в параллельной области или появляется в сокращение предложение a Параллельно директиву нельзя указать в a firstprivate предложение on рабочий-совместно с помощью директивы, привязывается к параллельной конструкции.