 DocAda(tm) is a productivity tool of KSCE
DocAda(tm) is a productivity tool of KSCE
 |
 |  |
 |  |
 |  |
 | 
 
About DocAda Light:
  Preface / Preliminary
/ Help
/ TOC
/ Copyright
DocAda Online at the Ada Home:
  Complete RM95
/ Updates
/ News
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.
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;
 
About DocAda Light:
  Preface / Preliminary
/ Help
/ TOC
/ Copyright
DocAda Online at the Ada Home:
  Complete RM95
/ Updates
/ News
 |
 |  |
 |  |
 |  |
 | 