comp.lang.ada
 help / color / mirror / Atom feed
From: Tucker Taft <stt@avercom.net>
Subject: Re: protected objects and data structures
Date: Fri, 07 Sep 2001 13:51:18 -0400
Date: 2001-09-07T17:51:22+00:00	[thread overview]
Message-ID: <3B990916.D981BA9C@avercom.net> (raw)
In-Reply-To: 3B979A49.FF2C4731@worldnet.att.net

James Rogers wrote:
> 
> Sure.
> 
> With variant records you will need to create the linked list such that
> each element is dynamically allocated and the node is initialized with
> the variant being stored. This will work unless the variant record you
> are allocating contains a task object. In that case the allocation is
> potentially blocking. Potentially blocking operations are forbidden in
> a protected operation.

Just to be clear, allocation is never potentially blocking.
It is the initialization of the object that might
be potentially blocking.  In the very rare
case of putting a task inside a variant record, you
could get into trouble.  In general, however, it is
perfectly fine to use linked lists of variant or tagged
records inside protected objects.

> 
> Jim Rogers
> Colorado Springs, Colorado USA

-Tucker Taft  stt@avercom.net
> 
> Tony Gair wrote:
> >
> > Has anyone here used a predefined ada data structure inside a protected object.
> >
> > My problem is that I need to store a undefined amount of variant records inside a
> > protected variable / object.
> >
> > Any ideas

-- 
-Tucker Taft   stt@avercom.net   http://www.avercom.net
Chief Technology Officer, AverCom Corporation (A Titan Company) 
Bedford, MA  USA (AverCom was formerly the Commercial Division of AverStar:
http://www.averstar.com/~stt)



      reply	other threads:[~2001-09-07 17:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-06 15:09 protected objects and data structures Tony Gair
2001-09-06 15:45 ` James Rogers
2001-09-07 17:51   ` Tucker Taft [this message]
replies disabled

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