powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Найти утечку памяти. Как?
9 сообщений из 9, страница 1 из 1
Найти утечку памяти. Как?
    #35673384
Фотография u78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Падает с ошибкой STORE.

Есть цикл по объектам, несколько вложенных вызовов методов объектов, каждый объект имеет коллекции ListOfObj, цикл по коллекциям. Все методы PROCEDUREBLOCK.

Есть ли какая то системная рутина которая может показать, куда у меня уходит вся память процесса?

Кто нибудь сталкивался с такой задачей - найти утечку памяти? Как решали?
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35673431
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
u78Кто нибудь сталкивался с такой задачей - найти утечку памяти?
Мы с МСМа... Привыкшие работать в 30-30 КБ... Нам такое неведомо.
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35673617
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До 48Мб память процесса увеличили?
Попытаться отследить утечку можно так: установить точки останова в критических (на Ваш взгляд) точках и смотреть в отладчике значение системной переменной $S.
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35673801
AlexKB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А лучше писать в Лог глобал значение памяти и сопутствующую информацию в каждой точке, индексируя по $ZH.
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35675377
=Dimon=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
u78Падает с ошибкой STORE.

Есть цикл по объектам, несколько вложенных вызовов методов объектов, каждый объект имеет коллекции ListOfObj, цикл по коллекциям. Все методы PROCEDUREBLOCK.

Есть ли какая то системная рутина которая может показать, куда у меня уходит вся память процесса?

Кто нибудь сталкивался с такой задачей - найти утечку памяти? Как решали?
У меня была аналогичная проблема, писал об этом раньше. У меня было 4 списка (ListOfObjects) на памяти по 7000 объектов в каждом. Падало при переборе элементов. Проблема исчезла, когда с каждым списком стал работать отдельно и увеличил количество выделяемой памяти на процесс.
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35675395
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
d $system.OBJ.ShowObjects()
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35675480
=Dimon=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
u78Падает с ошибкой STORE.

Есть цикл по объектам, несколько вложенных вызовов методов объектов, каждый объект имеет коллекции ListOfObj, цикл по коллекциям. Все методы PROCEDUREBLOCK.

Есть ли какая то системная рутина которая может показать, куда у меня уходит вся память процесса?

Кто нибудь сталкивался с такой задачей - найти утечку памяти? Как решали?
Либо зайдите в Портал управления, выберите Ваш процесс и посмотрите какие переменные и объекты он использует.
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35675488
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А там разве показывает объекты?
...
Рейтинг: 0 / 0
Найти утечку памяти. Как?
    #35677012
Фотография u78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо.

Итог таков:

Можно посмотреть какие открыты объекты
do $system.OBJ.ShowObjects()

Можно посмотреть на объект
do $system.OBJ.Dump(ObjectVariable)

Можно посмотреть текущую свободную память процесса
write $Storage

К сожалению нельзя "взвесить" отдельный объект.

Методом думания нашёл самый толстый объект - им оказался %Library.ArrayOfDataTypes, создал новый класс в котором повторил все Get и Insert (и прочие геттеры и сеттеры), только с хранением в process private global.
Всё заработало.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Найти утечку памяти. Как?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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