comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Timeouts in Ada
Date: Tue, 22 Jul 2014 16:52:02 -0500
Date: 2014-07-22T16:52:02-05:00	[thread overview]
Message-ID: <lqmme2$gpr$1@loke.gir.dk> (raw)
In-Reply-To: _Sizv.37414$ic5.15869@fx21.iad

"Shark8" <OneWingedShark@gmail.com> wrote in message 
news:_Sizv.37414$ic5.15869@fx21.iad...
> On 21-Jul-14 17:34, Randy Brukardt wrote:
>> Ergo, the best thing to do with ATC is to ignore that it exists.
>
> When you have advice like that it kinda indicates a mistake.
> Would you call ATC a mistake? (I've never used it, so I can't REALLY 
> say -- though it seems that perhaps an entirely different structure 
> [rather than overloading SELECT] may've helped.)

It's hard to say. It might be useful in very limited circumstances. As 
Dmitry pointed out, the semantics of abort is so nasty that it is hard to do 
anything useful afterwards, unless what is aborted is carefully limited. 
(And the language gives no help in that.)

So, I'd suggest using it only if there is no other way (the same goes for 
abort proper, BTW), you are sure you know what you are doing, and the 
abortable part doesn't contain any I/O or other system calls [other than 
tasking], but it does contain lots of abort completion points. Then it can 
be used somewhat portably. Definitely stay miles away if any I/O is 
involved, or for that matter any writing of large global data structures.

                                    Randy.




  parent reply	other threads:[~2014-07-22 21:52 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-17  5:18 Timeouts in Ada NiGHTS
2014-07-17  7:08 ` Simon Wright
2014-07-17  8:35   ` NiGHTS
2014-07-21 23:34   ` Randy Brukardt
2014-07-22  1:11     ` Shark8
2014-07-22  7:39       ` J-P. Rosen
2014-07-22  8:31         ` Simon Wright
2014-07-22 21:52       ` Randy Brukardt [this message]
2014-07-17  7:38 ` J-P. Rosen
2014-07-17  8:40   ` NiGHTS
2014-07-17 10:00     ` J-P. Rosen
2014-07-17 19:27   ` Jeffrey Carter
2014-07-17 19:51     ` J-P. Rosen
2014-07-17 20:52       ` Jeffrey Carter
2014-07-17 20:29     ` Adam Beneschan
2014-07-17 20:52       ` J-P. Rosen
2014-07-21 23:44         ` Randy Brukardt
2014-07-17 20:43     ` Jeffrey Carter
2014-07-21 23:37   ` Randy Brukardt
2014-07-17  7:42 ` Dmitry A. Kazakov
2014-07-17  8:59   ` NiGHTS
2014-07-17  9:48     ` Dmitry A. Kazakov
2014-07-17 17:10       ` NiGHTS
2014-07-17 20:45         ` Dmitry A. Kazakov
2014-07-17 16:12 ` Adam Beneschan
2014-07-17 16:46   ` NiGHTS
2014-07-17 17:11     ` Simon Wright
2014-07-17 17:58       ` NiGHTS
2014-07-17 19:02         ` Jeffrey Carter
2014-07-17 18:58       ` Jeffrey Carter
2014-07-17 18:12     ` Adam Beneschan
2014-07-17 19:27       ` Jeffrey Carter
2014-07-17 18:56     ` Jeffrey Carter
2014-07-23 22:37     ` Robert A Duff
2014-07-24  9:23       ` AdaMagica
2014-07-24 15:37         ` Robert A Duff
2014-07-25  5:16           ` Randy Brukardt
2014-07-25  9:11           ` AdaMagica
2014-07-25 16:15             ` Brad Moore
2014-07-25 16:34             ` Dmitry A. Kazakov
2014-07-17 19:27 ` Jeffrey Carter
replies disabled

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