|
|
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: 1090 (0x442)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
with Readers_Writers;
use Readers_Writers;
package body Shared_Variable is
C : Control;
-- for testing only: Item made "in out" instead of "out"
procedure Read (Item : in out Object_Type) is
begin
select
C.Start (Read);
or
delay Read_Time_Limit;
raise Timed_Out;
end select;
-- for testing only; this allows the scheduler to screw up!
Copy (From => Object, To => Item);
-- temporarily replaces
-- Item := Object;
-- for testing only
Read_Put (Item);
C.Stop;
end Read;
procedure Write (Item : in Object_Type) is
begin
select
C.Start (Write);
or
delay Write_Time_Limit;
raise Timed_Out;
end select;
-- for testing only; this allows the scheduler to screw up!
Copy (From => Item, To => Object);
-- temporarily replaces
Object := Item;
-- for testing only
Write_Put (Item);
C.Stop;
end Write;
end Shared_Variable;