8.37 ATOMIC_REF — Получение значения переменной атомарно
- Описание:
-
ATOMIC_DEFINE(ATOM, VALUE)атомарно присваивает значение переменной ATOM переменной VALUE. Если STAT присутствует и вызов был успешным, ему присваивается значение 0. Если он присутствует и вызов не удался, ему присваивается положительное значение; в частности, для коиндексированной ATOM, если удалённый образ остановился, ему присваивается значениеISO_FORTRAN_ENV’sSTAT_STOPPED_IMAGE, а если удалённый образ завершился неудачей, то значениеSTAT_FAILED_IMAGE. - Стандарт:
-
Fortran 2008 и более поздние версии; с STAT, TS 18508 или более поздние версии
- Класс:
-
Атомарная подпрограмма
- Синтаксис:
-
CALL ATOMIC_REF(VALUE, ATOM [, STAT]) - Аргументы:
-
VALUE Скаляр того же типа, что и ATOM. Если тип различается, значение преобразуется к типу ATOM. ATOM Скалярная комассивная или коиндексированная переменная целочисленного типа с ATOMIC_INT_KINDтипом или логического типа сATOMIC_LOGICAL_KINDтипом.STAT (необязательно) Скалярная целочисленная переменная стандартного типа. - Пример:
-
program atomic use iso_fortran_env logical(atomic_logical_kind) :: atom[*] logical :: val call atomic_ref (atom, .false.) ! ... call atomic_ref (atom, val) if (val) then print *, "Obtained" end if end program atomic - См. также:
ATOMIC_DEFINE— Атомарное присваивание переменной,ATOMIC_CAS— Атомарный сравни и поменять,ISO_FORTRAN_ENV,ATOMIC_FETCH_ADD— Атомарная операция сложения с предварительным получением,ATOMIC_FETCH_AND— Атомарная побитовая операция И с предварительным получением,ATOMIC_FETCH_OR— Атомарная побитовая операция ИЛИ с предварительным получением,ATOMIC_FETCH_XOR— Атомарная побитовая операция ИСКЛЮЧАЮЩЕЕ ИЛИ с предварительным получением
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-14.2.0/gfortran/ATOMIC_005fREF.html