Go to the first, previous, next, last section, table of contents.
-
A conditional_entry_call issues an entry call that is then cancelled if
it is not selected immediately (or if a requeue-with-abort of the call
is not selected immediately).
Syntax
-
conditional_entry_call ::=
select
entry_call_alternative
else
sequence_of_statements
end select;
Dynamic Semantics
-
The execution of a conditional_entry_call is defined to be equivalent to
the execution of a timed_entry_call with a delay_alternative specifying
an immediate expiration time and the same sequence_of_statements as
given after the reserved word else.
NOTES
-
(37) A conditional_entry_call may briefly increase the Count attribute
of the entry, even if the conditional call is not selected.
Examples
-
Example of a conditional entry call:
-
procedure Spin(R : in Resource) is
begin
loop
select
R.Seize;
return;
else
null; -- busy waiting
end select;
end loop;
end;
Go to the first, previous, next, last section, table of contents.