module fifo (DATA) is ------------------------------------------------------------------------------ process MAIN [GET: GET_CHANNEL] is hide SYNC: none in par SYNC in disrupt P [GET, SYNC] (1 of ADR) by Q [SYNC] end disrupt || disrupt P [GET, SYNC] (2 of ADR) by Q [SYNC] end disrupt || disrupt P [GET, SYNC] (3 of ADR) by Q [SYNC] end disrupt end par end hide end process ------------------------------------------------------------------------------ process P [GET: GET_CHANNEL, SYNC: none] (A: ADR) is GET (A, 1 of MSG); SYNC; GET (A, 2 of MSG); SYNC; GET (A, 3 of MSG); stop end process ------------------------------------------------------------------------------ process Q [SYNC: none] is loop SYNC end loop end process ------------------------------------------------------------------------------ end module