- - - - CENAPAD-MGCO

contents index A seguir: Semáforos Acima: Exemplos de Uso Anterior: Pesquisa e Inserção em


Buffer Limitado

X:: buffer: (0..9)portion;
    in, out: integer;
    in := 0;  out := 0;
    comment 0 <= out <= in <= out + 10 
    *[
       in < out + 10;
       producer ? buffer(in MOD 10) -> in := in + 1
     ||
       out N in;
       consumer ? more() ->
         consumer ! buffer(out MOD 10);
         out := out + 1
     ]



Osvaldo Carvalho - Postscript - Comentários?