From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Finalization of library level tasks
Date: Wed, 18 Apr 2018 13:58:00 +0200
Date: 2018-04-18T13:58:00+02:00 [thread overview]
Message-ID: <pb7bs8$1olg$1@gioia.aioe.org> (raw)
In-Reply-To: pb7aeq$1m8j$1@gioia.aioe.org
On 18/04/2018 13:33, J-P. Rosen wrote:
> Le 18/04/2018 à 11:58, Dmitry A. Kazakov a écrit :
>> can be emulated using Callable on the helper task:
>>
>> task Helper is
>> entry Never;
>> end Helper;
>>
>> task body Helper is
>> begin
>> select
>> accept Never;
>> or terminate;
>> end select;
>> end Helper;
>>
>> task body Worker_Task is
>> begin
>> while Helper'Callable loop
>> ... -- Do something
>> end loop;
>> end Worker_Task;
>>
>> When Helper and Worker_Task have same master then Worker_Task can break
>> finalization deadlock by looking at the Helper.
> Won't work. Please read 9.3(6/1):
> the open terminate_alternative is selected if and only if the following
> conditions are satisfied:
> - The task depends on some completed master; and
> - Each task that depends on the master considered is either already
> terminated or similarly blocked at a select_statement with an open
> terminate_alternative.
(plus a race condition in tow. One could construct a case when a couple
of tasks will never terminate calling each other to ensure that at a
time at least two of them do not offer terminate alternative. How nice)
> Since Worker_Task and Helper depend on the same master, and Worker_Task
> is still busy, Helper won't select the terminate alternative, and will
> be still Callable.
Well, it seems broken beyond repair then. Let me guess, there going to
be no change to fix the mess. Right?
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2018-04-18 11:58 UTC|newest]
Thread overview: 89+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-15 13:40 Finalization of library level tasks Dmitry A. Kazakov
2018-04-15 14:02 ` Jeffrey R. Carter
2018-04-15 14:12 ` Dmitry A. Kazakov
2018-04-15 14:54 ` Jeffrey R. Carter
2018-04-15 15:15 ` Dmitry A. Kazakov
2018-04-15 15:46 ` AdaMagica
2018-04-15 15:53 ` Dmitry A. Kazakov
2018-04-15 17:17 ` AdaMagica
2018-04-15 17:40 ` Dmitry A. Kazakov
2018-04-15 19:32 ` Egil H H
2018-04-15 20:09 ` Dmitry A. Kazakov
2018-04-25 23:49 ` Randy Brukardt
2018-04-16 5:19 ` J-P. Rosen
2018-04-16 7:30 ` Dmitry A. Kazakov
2018-04-16 7:55 ` J-P. Rosen
2018-04-16 8:13 ` Dmitry A. Kazakov
2018-04-16 8:32 ` J-P. Rosen
2018-04-16 15:26 ` Dmitry A. Kazakov
2018-04-17 9:51 ` AdaMagica
2018-04-17 12:31 ` Dmitry A. Kazakov
2018-04-17 15:37 ` Jeffrey R. Carter
2018-04-17 15:57 ` Dmitry A. Kazakov
2018-04-17 20:16 ` Jeffrey R. Carter
2018-04-17 20:59 ` Dmitry A. Kazakov
2018-04-18 5:20 ` J-P. Rosen
2018-04-17 20:55 ` J-P. Rosen
2018-04-17 21:23 ` Dmitry A. Kazakov
2018-04-18 5:26 ` J-P. Rosen
2018-04-26 0:02 ` Randy Brukardt
2018-04-18 8:06 ` AdaMagica
2018-04-18 8:25 ` Dmitry A. Kazakov
2018-04-18 8:52 ` Egil H H
2018-04-18 9:58 ` Dmitry A. Kazakov
2018-04-18 11:33 ` J-P. Rosen
2018-04-18 11:58 ` Dmitry A. Kazakov [this message]
2018-04-18 12:00 ` J-P. Rosen
2018-04-18 12:25 ` Dmitry A. Kazakov
2018-04-18 13:51 ` J-P. Rosen
2018-04-18 14:12 ` Dmitry A. Kazakov
2018-04-18 14:52 ` J-P. Rosen
2018-04-18 15:04 ` Dmitry A. Kazakov
2018-04-18 20:26 ` AdaMagica
2018-04-18 21:00 ` Dmitry A. Kazakov
2018-04-18 20:40 ` AdaMagica
2018-04-19 7:34 ` Simon Wright
2018-04-18 21:29 ` J-P. Rosen
2018-04-19 7:32 ` Dmitry A. Kazakov
2018-04-26 0:04 ` Randy Brukardt
2018-04-26 8:56 ` Dmitry A. Kazakov
2018-04-26 22:10 ` Randy Brukardt
2018-04-27 4:48 ` J-P. Rosen
2018-04-27 20:52 ` Randy Brukardt
2018-04-17 11:16 ` J-P. Rosen
2018-04-17 12:47 ` Dmitry A. Kazakov
2018-04-17 14:08 ` J-P. Rosen
2018-04-17 14:47 ` Dmitry A. Kazakov
2018-04-17 22:00 ` Robert A Duff
2018-04-18 7:25 ` Dmitry A. Kazakov
2018-04-25 23:54 ` Randy Brukardt
2018-04-26 16:22 ` Jeffrey R. Carter
2018-04-26 16:43 ` Dmitry A. Kazakov
2018-04-26 20:19 ` J-P. Rosen
2018-04-16 9:19 ` AdaMagica
2018-04-16 15:15 ` Dmitry A. Kazakov
2018-04-19 20:39 ` G. B.
2018-04-20 7:27 ` Dmitry A. Kazakov
2018-04-25 23:46 ` Randy Brukardt
2018-04-26 9:03 ` Dmitry A. Kazakov
2018-04-26 22:25 ` Randy Brukardt
2018-04-27 7:37 ` Dmitry A. Kazakov
2018-04-27 8:32 ` AdaMagica
2018-04-27 8:57 ` Dmitry A. Kazakov
2018-04-27 21:08 ` Randy Brukardt
2018-04-28 8:35 ` Dmitry A. Kazakov
2018-04-29 17:41 ` AdaMagica
2018-04-29 19:36 ` Dmitry A. Kazakov
2018-04-30 12:27 ` AdaMagica
2018-04-30 13:03 ` Dmitry A. Kazakov
2018-04-30 16:52 ` Jeffrey R. Carter
2018-04-30 17:06 ` Dmitry A. Kazakov
2018-05-01 9:17 ` AdaMagica
2018-05-01 9:40 ` Dmitry A. Kazakov
2018-05-01 11:18 ` Jeffrey R. Carter
2018-05-01 11:27 ` Dmitry A. Kazakov
2018-05-01 15:54 ` Niklas Holsti
2018-05-02 14:34 ` AdaMagica
2018-05-02 14:50 ` Dmitry A. Kazakov
2018-05-01 2:27 ` Randy Brukardt
2018-05-01 6:59 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox