
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
23.05.2013, 13:14:08
|
|||
|---|---|---|---|
|
|||
Профилирование |
|||
|
#18+
Под профайлером видно что в процессе работы создается куча java.awt.Insets и потом они в мусорку собираются. Подскажите как найти место в коде где создаются эти объекты? Какой инструмент использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2013, 13:25:49
|
|||
|---|---|---|---|
|
|||
Профилирование |
|||
|
#18+
Alexey KuznetsovПод профайлером видно что в процессе работы создается куча java.awt.Insets и потом они в мусорку собираются. Почему это проблема? Вообще это дежурный класс в Swing. Отрисока их может плодить постоянно. Alexey KuznetsovПодскажите как найти место в коде где создаются эти объекты? Какой инструмент использовать? В jvisualvm не видел такого. Нужно как-то инструментировать конструктор класса и добавить туда логирование. Каждый раз получать stacktrace может быть накладно. Лучше Reflection.getCallerClass попробовать. Правда не знаю кто даст инжектить в java.*. Проще самому класс захачить как-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2013, 13:27:32
|
|||
|---|---|---|---|
|
|||
Профилирование |
|||
|
#18+
Можно тупо breakpoint поставить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2013, 13:30:51
|
|||
|---|---|---|---|
|
|||
Профилирование |
|||
|
#18+
Подумал немного про breakpoint. Вот описание трюка http://www.javalobby.org/java/forums/t19825.html добавляешь condition, который всегда возвращает false. Java там не будет останавливаться. Но зато она его каждый раз будет вычислять. А там можно вызывать утилиту, которая через getCallerClass будет логировать имена классов, или даже обновлять в Map<Class, Integer> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2013, 14:34:15
|
|||
|---|---|---|---|
|
|||
Профилирование |
|||
|
#18+
Blazkowicz, да я знаю что это рабочий класс для Swing-а, но похоже какие-то из наших рендереров для ячеек в таблице не очень оптимально написаны, вот и хочется найти код которые безобразничает. За подсказку с кодом спасибо, буду пробовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
02.11.2013, 23:27:09
|
|||
|---|---|---|---|
Профилирование |
|||
|
#18+
Тут когда-то давно говорили мол, getCallerClass производительней, в отличие вытягивания стека из исключений. Внезапно, Reflection.getCallerClass начиная с 7u40 нежелателен, а в 1.8 его не будет совсем, вот такие пироги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&tablet=1&tid=2128283]: |
0ms |
get settings: |
12ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
181ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 506ms |

| 0 / 0 |
