Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как увидеть состояние памяти? / 12 сообщений из 12, страница 1 из 1
07.07.2018, 16:23
    #39671045
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Есть Java аппликация, вызывающая одбц драйвер (с++).
Во время выполнения приложение показывает ошибку, о том ,что коннект к серверу баз был прерван, висит мэсыдж-бокс
и в это время в сислоге:
Код: plaintext
1.
malloc: *** error for object incorrect checksum for freed object - object ххх was probably modified after being freed



Ясно, что это неспроста и где-то есть проблемы с аллок-фри.
Можно ли чем-то посмотреть что это за объект ххх? или что можно сделать, чтобы понять, на чем пробивает?
...
Рейтинг: 0 / 0
07.07.2018, 17:50
    #39671059
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Mac OS x
...
Рейтинг: 0 / 0
08.07.2018, 22:29
    #39671335
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
как сделать типа такого же, но для mac os?

http://stevehanov.ca/blog/index.php?id=10
...
Рейтинг: 0 / 0
08.07.2018, 23:02
    #39671338
AlekseySQL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Ролг Хупин, я могу лишь только предложить использовать Intel Inspector- он ищет ошибки памяти. Сам подобные задачи не решал.
...
Рейтинг: 0 / 0
09.07.2018, 08:17
    #39671384
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
AlekseySQLРолг Хупин, я могу лишь только предложить использовать Intel Inspector- он ищет ошибки памяти. Сам подобные задачи не решал.

я меня есть исходные коды с++ - это одбц драйвер, но там то, что явно нашел - исправил.
Значит где-то еще остались хвосты, но они не очевидны.

Думал, например, переопределить (как в пред. ссылке) маллоки и фрее, чтобы вывести в лог хотя бы адрес объекта и сравнить потом с тем, что пишет вызывающее приложение.
...
Рейтинг: 0 / 0
09.07.2018, 10:49
    #39671484
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Ролг ХупинAlekseySQLРолг Хупин, я могу лишь только предложить использовать Intel Inspector- он ищет ошибки памяти. Сам подобные задачи не решал.

я меня есть исходные коды с++ - это одбц драйвер, но там то, что явно нашел - исправил.
Значит где-то еще остались хвосты, но они не очевидны.

Думал, например, переопределить (как в пред. ссылке) маллоки и фрее, чтобы вывести в лог хотя бы адрес объекта и сравнить потом с тем, что пишет вызывающее приложение.

Ну есть всякие библиотеки под Linux для отладки хипа.
Electricfence, там, и другие. Их штук 5, надо выбирать, что тебе подойдёт.
Valgrind наконец.
...
Рейтинг: 0 / 0
09.07.2018, 11:47
    #39671518
NekZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Чё не AddressSanitizer?
...
Рейтинг: 0 / 0
09.07.2018, 16:25
    #39671693
256k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
NekZЧё не AddressSanitizer?

Главное Java приложение-> порождает c++ процесс-> загружает c++ odbc (как dylib)

Я управляю кодом и построением только odbc.

как AddressSanitizer использовать?
...
Рейтинг: 0 / 0
09.07.2018, 16:30
    #39671697
NekZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
256kNekZЧё не AddressSanitizer?

Главное Java приложение-> порождает c++ процесс-> загружает c++ odbc (как dylib)

Я управляю кодом и построением только odbc.

как AddressSanitizer использовать?
Нужно собрать C++ ODBC драйвер с соответствующими флагами компиляции и линковки.
...
Рейтинг: 0 / 0
13.07.2018, 11:53
    #39673609
256k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
NekZ256kпропущено...


Главное Java приложение-> порождает c++ процесс-> загружает c++ odbc (как dylib)

Я управляю кодом и построением только odbc.

как AddressSanitizer использовать?
Нужно собрать C++ ODBC драйвер с соответствующими флагами компиляции и линковки.

ок, а где потом увидеть результаты, если отловит облом? лог какой-то?
...
Рейтинг: 0 / 0
13.07.2018, 13:30
    #39673699
OoCc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
Ролг ХупинЕсть Java аппликация, вызывающая одбц драйвер (с++).
Во время выполнения приложение показывает ошибку, о том ,что коннект к серверу баз был прерван, висит мэсыдж-бокс
и в это время в сислоге:
Код: plaintext
1.
malloc: *** error for object incorrect checksum for freed object - object ххх was probably modified after being freed



Ясно, что это неспроста и где-то есть проблемы с аллок-фри.
Можно ли чем-то посмотреть что это за объект ххх? или что можно сделать, чтобы понять, на чем пробивает?

Enabling the Malloc Debugging Features
...
Рейтинг: 0 / 0
13.07.2018, 21:39
    #39673908
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как увидеть состояние памяти?
OoCcРолг ХупинЕсть Java аппликация, вызывающая одбц драйвер (с++).
Во время выполнения приложение показывает ошибку, о том ,что коннект к серверу баз был прерван, висит мэсыдж-бокс
и в это время в сислоге:
Код: plaintext
1.
malloc: *** error for object incorrect checksum for freed object - object ххх was probably modified after being freed



Ясно, что это неспроста и где-то есть проблемы с аллок-фри.
Можно ли чем-то посмотреть что это за объект ххх? или что можно сделать, чтобы понять, на чем пробивает?

Enabling the Malloc Debugging Features

непонятно, чем посмотреть результаты ?
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как увидеть состояние памяти? / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]