summaryrefslogtreecommitdiffstats
path: root/task_priority/task_priority.adb
diff options
context:
space:
mode:
Diffstat (limited to 'task_priority/task_priority.adb')
-rw-r--r--task_priority/task_priority.adb26
1 files changed, 16 insertions, 10 deletions
diff --git a/task_priority/task_priority.adb b/task_priority/task_priority.adb
index c4c5d64..33fcd29 100644
--- a/task_priority/task_priority.adb
+++ b/task_priority/task_priority.adb
@@ -2,12 +2,16 @@
-- Demonstrate Task Priority
--
--
---High: 17
---HighNative: ID=0x0B010004
--- 238
---Low: 16
---LowNative: ID=0x0B010003
--- 239
+-- Expected Output:
+-- High: 151
+-- HighNative: ID=0x0B010004 104
+-- Low: 150
+-- LowNative: ID=0x0B010003 105
+-- High - Waking up
+-- High - Waking up
+-- ....
+--
+-- $Id$
with Text_IO; use Text_IO;
@@ -21,16 +25,16 @@ procedure Task_Priority is
function getPriority return Interfaces.C.int;
pragma Import (C, getPriority, "getPriority");
begin
- Put_Line (Interfaces.C.int'Image (getPriority));
+ Put (Interfaces.C.int'Image (getPriority));
end Put_Priority;
- -- I think 16 > 17 to Ada
+ -- I think 151 > 150 to Ada
task Low_Task is
- pragma Priority(16);
+ pragma Priority(150);
end Low_Task;
task High_Task is
- pragma Priority(17);
+ pragma Priority(151);
end High_Task;
task body High_Task is
@@ -38,6 +42,7 @@ procedure Task_Priority is
Put_Line ( "High: " & System.Any_Priority'Image (Get_Priority));
Put ( "HighNative: " );
Put_Priority;
+ New_Line;
loop
delay 1.0;
Put_Line ("High - Waking up");
@@ -51,6 +56,7 @@ procedure Task_Priority is
Put_Line ( "Low: " & System.Any_Priority'Image (Get_Priority));
Put ( "LowNative: " );
Put_Priority;
+ New_Line;
delay 0.1;
loop
empty;