comp.lang.ada
 help / color / mirror / Atom feed
From: Ross <@gec.com>
Subject: Re: Are delay statements abortable?
Date: 2000/01/10
Date: 2000-01-10T00:00:00+00:00	[thread overview]
Message-ID: <387A102C.104BF78F@gec.com> (raw)
In-Reply-To: 85buah$hn4$1@nnrp1.deja.com

I don't believe they are in ada terms, but you could always pull the
plug.....
R.

davidb42@my-deja.com wrote:

> Are delay statements interruptable/abortable?
>
> I was expecting delay statements in tasks (or in the abortable part of
> an asynchronous select construct) to be brought to a premature end on
> aborting the task (or on the triggering event).
>
> However, in the Ada implementation I am using, the abortion only seems
> to take effect at the expiry of the delay.
>
> For example, in the program below, the main task completes after 25
> seconds, but the dependent task (and thus the program as a whole)
> doesn't terminate until 40 seconds (at expiry of the 2nd 20 second
> delay).
>
> Is this right?
>         David Bowerman
>         CSC Australia.
>
>    **************************************************************
> with Text_IO;
> procedure Test_Abort_of_Delay is
>
>   task Dependent_Task;
>   task body Dependent_Task is
>   begin
>     Text_IO.Put_Line ("Starting dependent task.");
>
>     delay 20.0;
>     Text_IO.Put_Line ("20 second delay has completed.");
>     delay 20.0;
>     Text_IO.Put_Line ("40 second delay has completed.");
>     delay 20.0;
>     Text_IO.Put_Line ("60 second delay has completed.");
>     delay 20.0;
>     Text_IO.Put_Line ("80 second delay has completed.");
>
>     Text_IO.Put_Line ("Completing dependent task.");
>   end Dependent_Task;
>
> begin
>   -- Main task
>   Text_IO.Put_Line ("Starting main task.");
>
>   delay 25.0;
>   abort Dependent_Task;
>
>   Text_IO.Put_Line ("Completing main task.");
> end Test_Abort_of_Delay;
>
> Sent via Deja.com http://www.deja.com/
> Before you buy.





  parent reply	other threads:[~2000-01-10  0:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-01-10  0:00 Are delay statements abortable? davidb42
2000-01-10  0:00 ` susan satnford
2000-01-10  0:00 ` Ross [this message]
2000-01-10  0:00 ` Tucker Taft
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox