with CALENDAR; use CALENDAR;
task body EINLESEN is
MESSZEIT: TIME;
MESSUNG_TIMEOUT: exception;
begin
loop
select
accept BESCHL(WERT: out WERT_T) do
WERT := TMP_REG.WERT;
end BESCHL;
or
accept NEU do
TMP_REG:=REGISTER;
MESSZEIT:=CLOCK;
end NEU;
or
delay 0.01-(CLOCK-MESSZEIT);
raise MESSUNG_TIMEOUT;
MESSZEIT:=CLOCK
end select;
end loop;
exception
when MESSUNG_TIMEOUT => Fehlerbehandlung
end EINLESEN;