comp.lang.ada
 help / color / mirror / Atom feed
From: "J-P. Rosen" <rosen@adalog.fr>
Subject: Re: Freeing access-to-task objects
Date: Sat, 1 Oct 2022 13:40:03 +0200	[thread overview]
Message-ID: <th98ui$1atuq$1@dont-email.me> (raw)
In-Reply-To: <b752f3d4-ecff-4ec6-b39d-439571ceaec8n@googlegroups.com>

Le 30/09/2022 à 12:16, Emmanuel Briot a écrit :
> Please find a new blog post at:
> 
> https://deepbluecap.com/freeing-task-access-objects/
> 
> Abstract:
> Freeing Ada tasks could result in accessing freed memory. This post describes the proper way of freeing access-to-task objects.

I don't like an active loop to wait for task termination. There are 
other ways:
1) declare the access type in a block, which is then the master of the 
tasks. When you exit the block, the tasks are terminated.
2) declare in the tasks an entry which is never accepted, then call this 
entry from the main. When the task terminates, it raises tasking_error 
in the (unserved) callers - you can free the task from the exception 
handler.

-- 
J-P. Rosen
Adalog
2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
Tel: +33 1 45 29 21 52
https://www.adalog.fr


  reply	other threads:[~2022-10-01 11:40 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-30 10:16 Freeing access-to-task objects Emmanuel Briot
2022-10-01 11:40 ` J-P. Rosen [this message]
2022-10-01 11:58   ` Dmitry A. Kazakov
2022-10-01 21:26     ` Björn Lundin
2022-10-01 14:01   ` Jeffrey R.Carter
2022-10-01 14:45     ` Emmanuel Briot
2022-10-09 16:10     ` Stephen Leake
2022-10-09 19:42       ` Jeffrey R.Carter
2022-10-10  8:13         ` Simon Wright
2022-10-10 16:35           ` Jeffrey R.Carter
2022-10-10 20:23       ` AdaMagica
replies disabled

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