![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Улучшение отладки в Delphi XE2: особенности SafeMM и изменения в RTLDelphi , Синтаксис , Память и УказателиС приходом Delphi XE2 разработчики столкнулись с рядом изменений в RTL, которые повлияли на работу некоторых сторонних библиотек, в том числе и на отладочный менеджер памяти SafeMM. Вопрос, который возник у сообщества, заключался в том, был ли кто-то уже адаптировал SafeMM под Delphi XE2, учитывая, что исходная версия 2009 года на CodeCentral не компилировалась из-за изменения типов данных в RTL. Проблема и её решениеВ RTL Delphi XE2 был заменён тип Альтернативные подходыВ комментариях было предложено использовать FastMM в режиме полной отладки, поскольку он поддерживает Delphi XE2 и 64-битные приложения. Также обсуждалась возможность использования SafeMM для 64-битных приложений, которые могут выделять более 2 ГБ памяти, что может быть полезно для тестирования безопасности памяти. Подтверждённый ответРазработчик опубликовал порт SafeMM для Delphi XE2 на CodeCentral. Он подтвердил, что обновлённая версия корректно обрабатывает блоки памяти размером более 4 ГБ и может выделить более 4 ГБ небольших блоков в 64-битных приложениях. Также было исправлено критическое состояние, при котором SafeMM заканчивал работу при одновременной попытке освобождения большого блока памяти двумя потоками. Это исправление было внесено в версию от 7 июля 2012 года. Для старых версий Delphi, при использовании версии 0.3 SafeMM, необходимо обернуть код освобождения больших блоков в критическую секцию, как это было сделано в обновлённой версии. Пример кода
ВыводИспользование SafeMM в Delphi XE2 позволяет разработчикам улучшить процесс отладки, выявляя ошибки, связанные с управлением памятью. Несмотря на необходимость адаптации к новым версиям компилятора, сообщество продолжает поддерживать и развивать инструменты, способствующие повышению качества программного обеспечения. Обсуждение и решение проблем адаптации отладочного менеджера памяти SafeMM для использования в среде разработки Delphi XE2 после изменений в RTL, влияющих на работу с памятью. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Память и Указатели ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |