|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 3072 (0xc00)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Phil, seg_058311
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
--::::::::::
--phil.adb
--::::::::::
with Room;
with Random;
package body Phil is
task body Philosopher is
Who_Am_I : Positive;
First_Grab : Positive;
Second_Grab : Positive;
Meal_Time : Natural;
Think_Time : Natural;
begin
accept Come_To_Life (My_Id : Positive;
Chopstick1 : Positive;
Chopstick2 : Positive) do
Who_Am_I := My_Id;
First_Grab := Chopstick1;
Second_Grab := Chopstick2;
end Come_To_Life;
Room.Head_Waiter.Report_State (Who_Am_I, Breathing);
loop
Room.Sticks (First_Grab).Pick_Up;
Room.Head_Waiter.Report_State (Who_Am_I, Got_One_Stick, First_Grab);
Room.Sticks (Second_Grab).Pick_Up;
Room.Head_Waiter.Report_State
(Who_Am_I, Got_Other_Stick, Second_Grab);
Meal_Time := Random.Random_Int (10);
Room.Head_Waiter.Report_State (Who_Am_I, Eating, Meal_Time);
delay Duration (Meal_Time);
Room.Head_Waiter.Report_State (Who_Am_I, Done_Eating);
Room.Sticks (First_Grab).Put_Down;
Room.Sticks (Second_Grab).Put_Down;
Think_Time := Random.Random_Int (10);
Room.Head_Waiter.Report_State (Who_Am_I, Thinking, Think_Time);
delay Duration (Think_Time);
end loop;
end Philosopher;
end Phil;
nblk1=2
nid=0
hdr6=4
[0x00] rec0=26 rec1=00 rec2=01 rec3=034
[0x01] rec0=13 rec1=00 rec2=02 rec3=001
tail 0x217658ea487e288db3144 0x42a00088462060003