13.11.5 Subpool Reclamation
1/3
A subpool may be explicitly deallocated using Unchecked_Deallocate_Subpool.
Static Semantics
2/3
The following language-defined
library procedure exists:
3/3
with System.Storage_Pools.Subpools;
procedure Ada.Unchecked_Deallocate_Subpool
(Subpool :
in out System.Storage_Pools.Subpools.Subpool_Handle);
4/3
If Subpool is null, a call on Unchecked_Deallocate_Subpool
has no effect. Otherwise, the subpool is finalized, and Subpool is set
to null.
5/3
Finalization of a subpool
has the following effects:
6/3
The subpool no longer belongs to any pool;
7/3
Any of the objects allocated from the subpool that
still exist are finalized in an arbitrary order;
8/3
The following dispatching
call is then made:
9/3
Deallocate_Subpool(Pool_of_Subpool(Subpool).all, Subpool);
10/3
Finalization of a Root_Storage_Pool_With_Subpools
object finalizes all subpools that belong to that pool that have not
yet been finalized.
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe