Ошибка устаревшего указателя - Stale pointer bug
эта статья нужны дополнительные цитаты для проверка.Сентябрь 2014 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
А ошибка устаревшего указателя, иначе известный как ошибка псевдонима, представляет собой класс тонких программных ошибок, которые могут возникнуть в коде, который распределение динамической памяти, особенно через маллок функция или эквивалент.
Если несколько указатели адрес (являются "псевдонимы для ") данного фрагмента хранилища, может случиться так, что хранилище будет освобождено или перераспределено (и, таким образом, перемещено) через один псевдоним, а затем на него будет ссылаться другой, что может привести к неявным (и, возможно, прерывистому) потеря в зависимости от состояния и истории размещения malloc arena. Этой ошибки можно избежать, никогда не создавая псевдонимы для выделенной памяти, управляя динамическим объем ссылок на хранилище, чтобы ни одно не могло остаться после его освобождения, или с помощью уборщик мусора, в виде интеллектуальной библиотеки распределения памяти или предоставленной языки более высокого уровня, такие как Лисп.
Термин "ошибка псевдонима" в настоящее время ассоциируется с C программирования, но он уже использовался в очень похожем смысле в АЛГОЛ 60 и Фортран Сообщества языков программирования в 1960-х.
Смотрите также
Статья основана на материалах, взятых из Бесплатный онлайн-словарь по вычислительной технике до 1 ноября 2008 г. и зарегистрированы в соответствии с условиями «перелицензирования» GFDL, версия 1.3 или новее.
Эта программная инженерия -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |