Справочник по Ada 95
13.11.3 Предикат Controlled
Предикат Controlled используется для предотвращения автоматического освобождения памяти (сборки мусора) для объектов, созданных аллокаторами данного типа доступа.
Синтаксис
Форма предиката Controlled следующая:
pragma Controlled(first_subtype_local_name);
Правила легальности
Имя first_subtype_local_name предиката Controlled должно обозначать не производный тип доступа.
Статическая семантика
Предикат Controlled — это предикат представления, который определяет аспект controlled представления.
Сбор мусора — это процесс, который автоматически освобождает память или перемещает объекты в другое местоположение, при этом сами объекты продолжают существовать.
Если для типа доступа со стандартным пулом памяти указан предикат Controlled, то сбор мусора не выполняется для объектов в этом пуле.
Разрешения для реализации
Реализация может не поддерживать сбор мусора, в этом случае предикат Controlled не оказывает никакого влияния.