Ada Reference ManualLegal Information
Contents   Index   References   Search   Previous   Next 

D.4 Entry Queuing Policies

1/1
This clause specifies a mechanism for a user to choose an entry queuing policy. It also defines two such policies. Other policies are implementation defined. 

Syntax

2
The form of a pragma Queuing_Policy is as follows: 
3
  pragma Queuing_Policy(policy_identifier);

Legality Rules

4
The policy_identifier shall be either FIFO_Queuing, Priority_Queuing or an implementation-defined identifier.

Post-Compilation Rules

5
A Queuing_Policy pragma is a configuration pragma.

Dynamic Semantics

6
A queuing policy governs the order in which tasks are queued for entry service, and the order in which different entry queues are considered for service. The queuing policy is specified by a Queuing_Policy pragma. 
7/2
Two queuing policies, FIFO_Queuing and Priority_Queuing, are language defined. If no Queuing_Policy pragma applies to any of the program units comprising the partition, the queuing policy for that partition is FIFO_Queuing. The rules for this policy are specified in 9.5.3 and 9.7.1.
8
The Priority_Queuing policy is defined as follows: 
9
10/1
11
12
13
14

Implementation Permissions

15/2
 Implementations are allowed to define other queuing policies, but need not support more than one queuing policy per partition.
15.1/2
   Implementations are allowed to defer the reordering of entry queues following a change of base priority of a task blocked on the entry call if it is not practical to reorder the queue immediately.

Implementation Advice

16
The implementation should use names that end with “_Queuing” for implementation-defined queuing policies.

Contents   Index   References   Search   Previous   Next 
Ada-Europe Sponsored by Ada-Europe