From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Finalization of library level tasks
Date: Thu, 26 Apr 2018 10:56:03 +0200
Date: 2018-04-26T10:56:03+02:00 [thread overview]
Message-ID: <pbs473$co3$1@gioia.aioe.org> (raw)
In-Reply-To: pbr52r$lu1$1@franka.jacob-sparre.dk
On 26/04/2018 02:04, Randy Brukardt wrote:
> "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message
> news:pb74sr$1cmf$1@gioia.aioe.org...
>> On 18/04/2018 10:52, Egil H H wrote:
>>> Undefined?
>>>
>>> 9.9(2), "a task is callable unless it is completed or abnormal"
>>> 9.3(5), "A task is said to be completed when the execution of its
>>> corresponding task_body is completed"
>>
>> OK, it is defined enough to confirm that T'Callable cannot be used to
>> break finalization deadlock.
>
> Of course it can: you test T'Callable of your parent task, *not* of
> yourself. If that parent is the environment task, use the
> Task_Identification version.
No, because the parent task is not going to terminate.
The problem is to test if the current task is awaited to terminate in
order to have an equivalent of:
loop
select
terminate;
else
null;
end select;
-- Do a portion of work
end loop;
There is no solution to this below the library level where the
environment task hack works.
Under the library level an access to the task must be used *and* this
pointer type must be declared one level up the future master of the
task. I.e. it cannot be local in the scope where the object creating the
task lives. This will deadlock as mandated by the RM.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2018-04-26 8:56 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
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 [this message]
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