Выделение - память - Большая Энциклопедия Нефти и Газа, статья, страница 4
Умный мужчина старается не давать женщине поводов для обид, но умной женщине, для того чтобы обидеться, поводы и не нужны. Законы Мерфи (еще...)

Выделение - память

Cтраница 4


Язык Ада предоставляет в распоряжение программиста средства для управления выделением памяти из кучи и возвращением в кучу освободившейся памяти ( см. разд. Ада [4]), но у автора нет абсолютной уверенности в том, что из текста стандарта на язык Ада [4] следует, что сформулированное в предыдущем предложении требование выполняется. С другой стороны, автор вынужден признать, что он не в состоянии доказать, что это требование не выполняется в языке Ада.  [46]

Это означает, что все действия, связанные с выделением памяти и ее последующим освобождением, должны явно проводиться самим программистом с сопутствующим этому риском возникновения фатальной ошибки, например, при отсутствии свободной памяти. Для этих целей в распоряжении программиста имеются стандартные процедуры new и dispose. При этом, если освобожденная с помощью стандартной процедуры dispose память выделяется для повторного использования с помощью процедуры new, возникает опасность, связанная с сохранением значения указателя на эту область памяти, оставшегося от ее предыдущего использования. Это может привести к очень трудно диагностируемым и непредсказуемым взаимодействиям по общим данным между различными, не связанными ( логически) друг с другом частями программы. Если же освобождаемая с помощью стандартной процедуры dispose память не поступает в пул для повторного использования ( с помощью стандартной процедуры new), то теряется смысл использования стандартной процедуры dispose. Причем в этом случае любая сколько-нибудь серьезная попытка организовать работу со списками, скорее всего, обречена на провал из-за быстрого исчерпания памяти, так как отсутствует возможность ее повторного использования.  [47]

Как уже отмечалось выше, если объект класса Counter требует выделения памяти, необходимо заместить конструктор-копировщик. Но в данном случае конструктор-копировщик, заданный по умолчанию, отлично справляется со своими задачами.  [48]

49 Схема программы, содержащей указание об эквивалентности переменных А к В, позволяющее их разместить в одной ячейке памяти без разрушения информации. Справа указаны маршруты переменных А и В. [49]

На рис. 5.5.1 показан пример блочной записи программы и порядок выделения памяти в управляющей ЦВМ для блоков. Как видно, для переменных блока 1, как самого внешнего, выделена память, ни с чем не совмещаемая.  [50]

Необязательный ключевой параметр STAT содержит информацию о результате выполнения операции выделения памяти. Параметр STAT должен быть переменной целого типа, не входящей в состав выделяемых объектов. Если выделение прошло успешно, переменная состояние принимает значение 0; если выделить память не удалось, то эта переменная принимает положительное значение.  [51]

Однако соответствующие элементы матрицы автоматически вызывают генерацию кодов, служащих для выделения памяти во время счета задачи.  [52]

53 Типы прерываний. [53]

Если в списке свободных сегментов требуемого размера не оказалось, то выделение памяти делается за счет откачки. При этом набирается группа смежных свободных и занятых нерезидентных сегментов. Суммарный размер этой группы должен быть больше требуемого или равен ему. Делается попытка программно переместить информацию занятых сегментов в другие места ОП либо откачать информацию из них во внешнюю память.  [54]

Второй способ динамического выделения памяти связан с применением процедур GetMem для выделения памяти и FreeMem для ее освобождения.  [55]

AUTOMATIC), указанные в атрибуте значения присваиваются каждый раз при выделении памяти.  [56]

Если в операторе JOB указан параметр REGION, то указание о выделении памяти для пункта задания игнорируется.  [57]



Страницы:      1    2    3    4