comp.lang.ada
 help / color / mirror / Atom feed
From: sjw <simon.j.wright@mac.com>
Subject: Re: Protected Adjust?
Date: Fri, 17 Apr 2009 11:21:03 -0700 (PDT)
Date: 2009-04-17T11:21:03-07:00	[thread overview]
Message-ID: <23c538ef-fd55-4c64-b0b2-66aab982c64a@q14g2000vbn.googlegroups.com> (raw)
In-Reply-To: tzWFl.14725$hc1.6142@flpi150.ffdc.sbc.com

On Apr 17, 8:52 am, Dimonax <dimo...@nospam.net> wrote:
> How does one encapsulate a Controlled type inside a Protected type such
> that Initialize, Finalize, and Ajust can be done concurrently?

> package mutators is

>         Protected Type Mutual_Excluder is
>                 -- This procedure is called by Initialize --
>                 procedure Create(Item : in Item_Type);
>
>                 -- This procedure is called by Adjust. --
>                 procedure Update(Item : in out Item_Pointer);
>
>                 -- This procedure is called by Finalize --
>                 procedure Destroy(Item : in out Item_Pointer);

There are no instances of Mutual_Excluder so how do these procedures
get called?

> The goal of this excercise is to be able to use the Adjust procedure from
> different tasks exclusively.

Initialize, Adjust, Finalize are only relevant as part of the
implementation of creation/assignment/copying/destruction. I don't see
how you propose to use mutators.Mutable in practice, it's hard to
comment further without some sort of use case.



      parent reply	other threads:[~2009-04-17 18:21 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-17  7:52 Protected Adjust? Dimonax
2009-04-17  8:40 ` Dmitry A. Kazakov
2009-04-17 18:21 ` sjw [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