Мы годами работали с BoundsChecker для Visual C ++ 6 (я думаю, что это был также BoundsChecker 5 или 6).Мы перешли на VS2008 (наконец-то!) И теперь нуждаемся в продолжении устаревшего BoundsChecker.
Как там ландшафт?
Какие инструменты есть?
Есть ли в городе новые дети?
Есть ли новые идеи, касающиеся проблем, для которых мы использовали профилировщики памяти?
Ваш недавний опыт использования этих инструментов?
Рекомендации?
Основным приложением является C ++ со многими COM DLL, мы собираемся отслеживать нативные, C ++ и COM утечки и объекты.Программа Bounds Checker для этого размера уже вызывала проблемы с производительностью, разбирая множество данных и некоторые ее ограничения.
Требуется поддержка управляемых приложений (прежде всего C #), хотя это может быть отдельный инструмент.
Смежный (но неполный IMO) вопрос: Современный эквивалент BoundsChecker для Visual Studio 2008
[редактировать]
Пересмотрите комментарий, «В современном C ++ вы просто используете типы самопроверки, и границы никогда не нарушаются» * :
Умные указатели с подсчетом ссылок могут иметь циклические ссылки.Интерфейс COM-компонентов небезопасен, так как требует много ручного управления памятью.У меня были сторонние GDI-дескрипторы утечки сервисов без пользовательского интерфейса, поэтому он провалил наши ночные тесты - производитель обвинил в этом «странный» Microsoft API.Я должен взаимодействовать с библиотеками на основе C, у меня есть тонны унаследованного кода, который предполагает хитрость выделения в смысле числовых рецептов, и имена переменных длиннее 3 букв предназначены для машинисток.У меня есть код от инженеров, для которых std::vector<double>::iterator
выглядит гораздо страшнее, чем double ***
, удачи в разработке и тестировании без серьезного опыта обработки сигналов.
Поэтому, если вы не приедете сюда, перепишите и инкапсулируйте ядро миллиона строк кода в надежных классах C ++ и убедитесь, что несколько десятков продуктов по-прежнему работают, как и раньше, сохраняйте свою умную сборку при себе.Хотелось бы, чтобы мне не понадобилась проверка памяти, но я делаю.Спасибо.