comp.lang.ada
 help / color / mirror / Atom feed
From: Robert Dewar <robert_dewar@my-dejanews.com>
Subject: Re: Task Problem
Date: 1999/04/11
Date: 1999-04-11T00:00:00+00:00	[thread overview]
Message-ID: <7eqja4$pf8$1@nnrp1.dejanews.com> (raw)
In-Reply-To: m3emltz10g.fsf@mheaney.ni.net

In article <m3emltz10g.fsf@mheaney.ni.net>,
 "David C. Hoos, Sr." <david.c.hoos.sr@ada95.com> writes:

 > -----Original Message-----
 > From: Sean Hill <shill@arlut.utexas.edu>
 > To: chat@gnat.com <chat@gnat.com>
 > Date: Thursday, April 08, 1999 4:03 PM
 > Subject: Task Problem
 >
 > >Any thoughts out there?
 > >
 > I know this is not a first step when porting from
 > Ada83 to Ada95, but I have found no need for the
 > rendezvous mechanism in any of my new
 > designs, and have changed many rendezvous designs
 > to use protected queues.

Certainly this is possible, but it inevitably ends up
with a lower level design. This is because protected
objects are extremely restrictive in what they can do,
they are not a general Ada building block. In any
protected object, you have to know whether any procedure
you might call is potentially blocking, something you
don't know from the spec.

We find people writing a LOT of invalid code in which
protected objects do in fact make blocking calls, and
we know at least one user who absolutely depends on this
behavior.

That's a bit worrisome.

Obviously a rendezvous can be implemented as efficiently
as a protected object interaction in a similarly
restricted case (that is what passive tasks were all
about in some Ada 83 implementations), so efficiency
is not really the issue here (from a language point
of view).

From my point of view, some problems are more naturally
solved with the RV, some with PT. The Burns and Welling
Realtime book is a very nice source of considerations of
various ways of using both constructions to solve
typical RT problems.

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




  reply	other threads:[~1999-04-11  0:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <004601be8271$a408ad60$a20eb4d8@dhoossr>
1999-04-10  0:00 ` Task Problem Matthew Heaney
1999-04-11  0:00   ` Robert Dewar [this message]
1999-04-12  0:00   ` charlet
1999-04-12  0:00   ` Jean-Pierre Rosen
replies disabled

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