Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Замер использования памяти

Замер использования памяти
Я
   Консультант Баранов
 
07.11.19 - 12:33
Есть обработка. Раньше работала нормально. Сейчас зависает.

Циклично обрабатывает объекты и на некотором зависает.

Предполагаю, что какая-то ТЗ сильно разрастается. Как лучше отследить что могло сильно разрастись?
 
 
   Ёпрст
 
1 - 07.11.19 - 12:35
(0) Открыть для себя жуколов и замер производительности
   Консультант Баранов
 
2 - 07.11.19 - 12:47
(1) > жуколов

Что такое?

> замер производительности

Производительность ничего не дает.

Строка с самым большим временем: Параметры.ДАтаСпецификации = ДатаСпецификации.
   ДенисЧ
 
3 - 07.11.19 - 12:48
База скорее всего битай.
Сколько размер ТЗ, на которой виснет?
   Консультант Баранов
 
4 - 07.11.19 - 12:51
(3) В том то и дело что не могу отловить на чем виснет.

Объекты однотипные.
   dka80
 
5 - 07.11.19 - 12:54
пиши все объекты в журнал регистрации скопом
потом записывай по одному, кто последний, значит после него проблемный объект
   H A D G E H O G s
 
6 - 07.11.19 - 12:55
(0) Позовите специалиста.
   H A D G E H O G s
 
7 - 07.11.19 - 12:56
(1) Вот такие у нас программисты, которые даже трассировкой пользоваться не умеют.
   sqr4
 
8 - 07.11.19 - 12:58
(7) да там может цикл на пару сотен тысяч повторений, такое хрен отладишь)
   H A D G E H O G s
 
9 - 07.11.19 - 13:01
(8) шлепать, капать.

Включаешь трассу, запускаешь выполнение, ждешь пока зависнет, выключаешь трассу. Пробегаешься по трассированным строкам и там, где число выполнений будет на единичку меньше предыдущей строки - зависание.
   ДенисЧ
 
10 - 07.11.19 - 13:01
(8) Можно в лог писать. Где закончилось, там и зависло )
   H A D G E H O G s
 
11 - 07.11.19 - 13:02
Замер производительности - первейший элемент отладки чужого кода.
   Консультант Баранов
 
12 - 07.11.19 - 13:09
(10) Можно взять один и тот же набор данных. В одном случае на одном объекте, в другом случае на другом.
   Консультант Баранов
 
13 - 07.11.19 - 13:11
(11) Замер производительности ничего не дает. Я и так знаю что наибольшая нагрузка на разузловании.

В процессе обработки идет счетчик объектов. Зависает не на каком-то конкретном объекте, а на случайном.
   H A D G E H O G s
 
14 - 07.11.19 - 13:23
(13) Вы (9) внимательно читали?
   sqr4
 
15 - 07.11.19 - 14:08
(10) с логом я понял, а вот (13) тоже интересная штука, почувствовал себя тупым
   Sapiens_bru
 
16 - 07.11.19 - 16:35
(0) Как вариант разбить обработку по типам объектов или по порциям и возвращаться на клиент после очередной порции. Тогда в ТЖ можно будет собрать CALL со свойствами Mem и MemoryPeak. Заодно можно LEAKS настроить.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.