← All compilation units

Flyology

Description

Selects the execution model used when an Ada task is activated.

Example:

task Worker with CPU => 1 is
   pragma Task_Info (Flyology.Lightweight_Task);
end Worker;

Execution_Model

subtype Execution_Model is System.Task_Info.Task_Info_Type;

Execution designation accepted by pragma Task_Info. The designation is fixed when a task is activated and cannot be changed afterwards.

Lightweight_Task

Lightweight_Task : constant Execution_Model;

Run the task cooperatively on an event loop. A CPU aspect in 0 .. 127 selects that shared execution group; no CPU selects the configured pool.

Native_Task

Native_Task : constant Execution_Model;

Run the task on its own GNARL-managed native thread. A CPU aspect keeps its normal Ada processor-affinity meaning.

Project_Default

Project_Default : constant Execution_Model :=
  null;

Use the project-wide default selected while preparing the runtime. The compatibility default is Native_Task unless FLYOLOGY_DEFAULT changes it.