EVENT_QUERY — Query whether a coarray event has occurred ¶CALL EVENT_QUERY (EVENT, COUNT [, STAT])
EVENT_QUERY assigns the number of events to COUNT that have been
posted to the EVENT variable and not yet been removed by calling
EVENT WAIT. When STAT is present and the invocation is successful,
it is assigned the value 0. If it is present and the invocation fails,
it is assigned a positive value and COUNT is assigned the value -1.
subroutine
| EVENT | (intent(IN)) Scalar of type EVENT_TYPE,
defined in ISO_FORTRAN_ENV; shall not be coindexed. |
| COUNT | (intent(out))Scalar integer with at least the precision of default integer. |
| STAT | (optional) Scalar default-kind integer variable. |
program atomic
use iso_fortran_env
implicit none
type(event_type) :: event_value_has_been_set[*]
integer :: cnt
if (this_image() == 1) then
call event_query (event_value_has_been_set, cnt)
if (cnt > 0) write(*,*) "Value has been set"
elseif (this_image() == 2) then
event post (event_value_has_been_set[1])
end if
end program atomic
TS 18508 or later