event_query(3f) - [FORTRAN:INTRINSIC:COLLECTIVE] Query whether a coarray event has occurred
call EVENT_QUERY(EVENT, COUNT [, STAT])
EVENT_QUERY assigns 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.
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.
Sample program:
program demo_event_query 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]) endif end program demo_event_query
[[TS 18508]] or later
Subroutine
event_query (3) | March 11, 2021 |