EVENT_QUERY — Query whether a coarray event has occurred
EVENT_QUERYassignes the number of events to COUNT which have been posted to the EVENT variable and not yet been removed by calling
EVENT WAIT. When STAT is present and the invocation was successful, it is assigned the value 0. If it is present and the invocation has failed, it is assigned a positive value and COUNT is assigned the value -1.
TS 18508 or later
CALL EVENT_QUERY (EVENT, COUNT [, STAT])
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) end if end program atomic