comp.lang.ada
 help / color / mirror / Atom feed
From: progers@acm.org
Subject: Re: Question about the need for requeue as described in Rationale
Date: 1996/07/10
Date: 1996-07-10T00:00:00+00:00	[thread overview]
Message-ID: <4s0g20$dca@uuneo.neosoft.com> (raw)
In-Reply-To: DuAyGJ.ACx@world.std.com


In <DuAyGJ.ACx@world.std.com>, bobduff@world.std.com (Robert A Duff) writes:
>In article <31E16C28.3BE2@csehp3.mdc.com>,
>James A. Squire <m193884@CSEHP3.MDC.COM> wrote:
>>How is this different from barrier conditions on protected entries and
>>procedures?
>
>It's not different.  The guards of an accept statement cannot reference
>parameters of the entry call.  The barrier of an entry body cannot
>reference the parameters of the entry call.
>
>This illustrates the need for requeue.  (Well, not *need*; exactly, I
>guess it illustrates the *usefulness* of requeue.)
>
>Suppose you want to write a protected entry that accepts the caller
>based on some condition, and that condition is based on the parameters
>of the call, and also on the current state of the protected object.
>Well, Ada doesn't support that, directly, so requeue gives you a way out
>-- you can accept the call unconditionally, and then write some code
>that checks all the relevant stuff, and either requeues-for-later, or
>else does-it-now.

That is an understatement, IMHO.  When one looks at the code required to
be safe from aborts and and cancellations -- which requires agent tasks --
requeue looks more like a necessity. True, that is overstatement, since 
it can be done without it, but realistically, no.


pat
---------------
Patrick Rogers
progers@acm.org





  reply	other threads:[~1996-07-10  0:00 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-06-20  0:00 GNAT Codesize Haug Buerger
1996-06-20  0:00 ` James E. Hopper
1996-06-21  0:00 ` Doug Smith
1996-06-21  0:00 ` Robert Dewar
1996-06-24  0:00   ` John McCabe
1996-06-24  0:00     ` John Howard
1996-06-25  0:00       ` Robert Dewar
1996-06-25  0:00       ` David J. Fiander
1996-06-26  0:00     ` Robert Dewar
1996-06-28  0:00       ` Fergus Henderson
1996-07-01  0:00         ` Michael Feldman
1996-07-03  0:00           ` John McCabe
1996-07-02  0:00         ` John McCabe
1996-07-03  0:00           ` Robert Dewar
1996-07-06  0:00             ` John McCabe
1996-07-06  0:00               ` Robert Dewar
1996-07-06  0:00               ` Michael Feldman
1996-07-08  0:00             ` Gavin Smyth
1996-06-28  0:00       ` John McCabe
1996-06-28  0:00         ` Fergus Henderson
1996-06-29  0:00           ` John McCabe
1996-07-01  0:00             ` Robert Dewar
1996-07-05  0:00               ` John McCabe
1996-07-05  0:00             ` JP Thornley
1996-06-30  0:00         ` Robert Dewar
1996-07-02  0:00           ` John McCabe
1996-07-03  0:00             ` Robert Dewar
1996-07-03  0:00   ` Question about the need for requeue as described in Rationale James A. Squire
1996-07-05  0:00     ` Bo I. Sanden
1996-07-05  0:00       ` progers
1996-07-06  0:00     ` Robert A Duff
1996-07-04  0:00   ` Samuel Tardieu
1996-07-04  0:00     ` Robert Dewar
1996-07-08  0:00   ` James A. Squire
1996-07-09  0:00     ` progers
1996-07-10  0:00     ` Robert A Duff
1996-07-10  0:00       ` progers [this message]
1996-07-08  0:00   ` James A. Squire
1996-07-08  0:00   ` James A. Squire
1996-07-08  0:00     ` Robert A Duff
1996-07-09  0:00     ` Bo I. Sanden
1996-07-09  0:00   ` Jon S Anthony
1996-06-21  0:00 ` GNAT Codesize Ralph Paul
1996-07-08  0:00 ` Question about the need for requeue as described in Rationale James A. Squire
replies disabled

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