|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 839 (0x347)
Types: TextFile
Names: »B«
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
└─⟦6f12a12be⟧ »DATA«
└─⟦this⟧
with Bounded_Queue_Generic;
with Frame;
package body Ack_Waiting_Workers is
package Worker_Queue is new Bounded_Queue_Generic
(Element => Worker.Worker_Reference);
Workers : Worker_Queue.Queue
((Frame.Tasks_Last + 1) * (Frame.Stations_Last + 1) + 1);
procedure Register (A_Worker : Worker.Worker_Reference) is
begin
Worker_Queue.Enqueue (Workers, A_Worker);
end Register;
function Exist return Boolean is
begin
return not Worker_Queue.Is_Empty (Workers);
end Exist;
function Extract return Worker.Worker_Reference is
A_Worker : Worker.Worker_Reference;
begin
A_Worker := Worker_Queue.First (Workers);
Worker_Queue.Dequeue (Workers);
return A_Worker;
end Extract;
end Ack_Waiting_Workers;