|
Замер использования памяти | ☑ | ||
---|---|---|---|---|
0
Консультант Баранов
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) В том то и дело что не могу отловить на чем виснет.
Объекты однотипные. |
|||
5
dka80
07.11.19
✎
12:54
|
пиши все объекты в журнал регистрации скопом
потом записывай по одному, кто последний, значит после него проблемный объект |
|||
6
H A D G E H O G s
07.11.19
✎
12:55
|
(0) Позовите специалиста.
|
|||
7
H A D G E H O G s
07.11.19
✎
12:56
|
(1) Вот такие у нас программисты, которые даже трассировкой пользоваться не умеют.
|
|||
8
sqr4
07.11.19
✎
12:58
|
(7) да там может цикл на пару сотен тысяч повторений, такое хрен отладишь)
|
|||
9
H A D G E H O G s
07.11.19
✎
13:01
|
(8) шлепать, капать.
Включаешь трассу, запускаешь выполнение, ждешь пока зависнет, выключаешь трассу. Пробегаешься по трассированным строкам и там, где число выполнений будет на единичку меньше предыдущей строки - зависание. |
|||
10
ДенисЧ
07.11.19
✎
13:01
|
(8) Можно в лог писать. Где закончилось, там и зависло )
|
|||
11
H A D G E H O G s
07.11.19
✎
13:02
|
Замер производительности - первейший элемент отладки чужого кода.
|
|||
12
Консультант Баранов
07.11.19
✎
13:09
|
(10) Можно взять один и тот же набор данных. В одном случае на одном объекте, в другом случае на другом.
|
|||
13
Консультант Баранов
07.11.19
✎
13:11
|
(11) Замер производительности ничего не дает. Я и так знаю что наибольшая нагрузка на разузловании.
В процессе обработки идет счетчик объектов. Зависает не на каком-то конкретном объекте, а на случайном. |
|||
14
H A D G E H O G s
07.11.19
✎
13:23
|
(13) Вы (9) внимательно читали?
|
|||
15
sqr4
07.11.19
✎
14:08
|
(10) с логом я понял, а вот (13) тоже интересная штука, почувствовал себя тупым
|
|||
16
Sapiens_bru
07.11.19
✎
16:35
|
(0) Как вариант разбить обработку по типам объектов или по порциям и возвращаться на клиент после очередной порции. Тогда в ТЖ можно будет собрать CALL со свойствами Mem и MemoryPeak. Заодно можно LEAKS настроить.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |