From: bobduff@world.std.com (Robert A Duff)
Subject: Re: Task question
Date: 1997/10/07
Date: 1997-10-07T00:00:00+00:00 [thread overview]
Message-ID: <EHp4K0.6MF@world.std.com> (raw)
In-Reply-To: 3439D647.7C43@home.com
In article <3439D647.7C43@home.com>, Larry Coon <lmcoon@home.com> wrote:
>If I do:
>
> or
> terminate;
>
>in place of the exit then it knows when the "calling"
>task is done and will terminate the task, but this isn't
>what I want -- the "other stuff" never gets executed.
When a terminate alternative is selected, the task will finalize all its
local variables before actually becoming terminated. So you can put the
"other stuff" in a Finalize procedure, and have it executed that way.
If the "other stuff" needs access to local data inside the task, you can
put that data inside the Limited_Controlled object, or you can get at it
via an access discriminant.
>I've also tried adding another accept as a signal for
>when the "calling" task is done:
>
>task body x is
>begin
> loop
> select
> accept my_rendezvous (some_data: some_data_type) do
> -- Rendezvous stuff
> end my_rendezvous;
> or
> accept done do
> exit;
> end done;
If you willing to have the extra entry, then do this:
accept done;
exit;
So the exit statement comes *after* the accept statement, not inside
it.
> end select;
> end loop;
> -- Now do more stuff.
>end x;
- Bob
next prev parent reply other threads:[~1997-10-07 0:00 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-10-06 0:00 Task question Larry Coon
1997-10-07 0:00 ` Robert A Duff [this message]
1997-10-13 0:00 ` Larry Coon
1997-10-07 0:00 ` Matthew Heaney
1997-10-07 0:00 ` Larry Coon
1997-10-07 0:00 ` David C. Hoos, Sr.
1997-10-07 0:00 ` Steve O'Neill
1997-10-07 0:00 ` Larry Coon
1997-10-08 0:00 ` Tom Moran
1997-10-08 0:00 ` Matthew Heaney
1997-10-30 0:00 ` Balmacara9
-- strict thread matches above, loose matches on Subject: below --
2007-12-10 22:12 shaunpatterson
2007-12-10 22:29 ` gpriv
2007-12-10 22:51 ` shaunpatterson
2007-12-10 23:13 ` gpriv
2007-12-10 23:40 ` Robert A Duff
2007-12-11 0:43 ` anon
1997-10-16 0:00 Paul Van Gorp
1997-10-19 0:00 ` elaine.waybright
1997-11-01 0:00 ` Matthew Heaney
1997-10-21 0:00 ` Robert A Duff
1996-09-15 0:00 task question Nicolay Belofastow
1996-09-23 0:00 ` Matthew Heaney
[not found] <204266@QZCOM>
1986-09-26 17:28 ` Task question Matts_Kallioniemi_QZ
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox