|
|
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: 1129 (0x469)
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⟧
--
-- THIS PROGRAM MEASURES THE TIME REQUIRED FOR A SIMPLE RENDEZVOUS.
--
--
-- PLEASE SET TIMES LARGE ENOUGH TO PROVIDE AT LEAST TWO SIGNIFICANT
-- DIGITS IN AVERAGE RENDEZ TIMES, I.E., THE DIFFERENCE BETWEEN
-- THE ELAPSED TIME AND THE LOOP TIME MUST BE AT LEAST 100 TIMES
-- DURATION'SMALL.
with Instrument;
use Instrument;
with System;
use System;
procedure Renda2 is
Times : constant Positive := 1000;
task T is
entry Call;
end T;
package Prevent is
Count : Natural := 0;
procedure Prevent_Optimization;
end Prevent;
use Prevent;
task body T is
begin
loop
select
accept Call;
or
terminate;
end select;
end loop;
end T;
package body Prevent is
procedure Prevent_Optimization is
begin
Count := Ident_Int (Count + 1);
end Prevent_Optimization;
end Prevent;
begin
Start ("RENDA2", " TIME FOR SIMPLE RENDEZVOUS");
for N in 1 .. Times loop
Prevent_Optimization;
T.Call;
end loop;
Stop;
end Renda2;