| 
 | 
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Всем привет! Подскажите пожалуйста, какой инструмент лучше всего использовать для профилирования программы? Мне нужно найти причину почему мои классы не не собираются GC. Сейчас я использую Nebeans 8.2. и встроенный профилировщик, он показывает, что некоторые мои классы не собираются GC, а причину понять не могу. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:35 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Это немного неверный термин. Профилирование - это ближе к перформансу. Например что-то медленно работает. В твоем случае - это memory dump. И возможно Eclipse Memory Analyzer чтобы посмотреть кто удерживает твои объекты. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:39 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  eclipse mat ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:40 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Mandarin Сейчас я использую Nebeans 8.2. уже есть Apache NetBeans IDE 11.3 пора перейти ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:43 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Спасибо за советы! ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:46 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Стековер как всегда - на страже нашего спокойствия. https://stackoverflow.com/questions/407612/how-to-get-a-thread-and-heap-dump-of-a-java-process-on-windows-thats-not-runnin ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 16:50 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  GC оперирует понятием достижимость (Reachability) узлов графа по отношению к другим узлам. Если считать что ссылка это ребро графа (Edge) а узел (Node) это объект. И если Мандарин насоздавал узлов которые достижимы из главного объекта (например это class Main) то GC их не убирает т.к. не имеет права. И да это могут быть стримы. Пулы. Коллекции. Синглтоны или просто долгоживущие сессионные объекты (хопа! нежданный поинт - проверить незакрытые Http sessions). Или просто ссылки из статик полей в другие объекты. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 18:20 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  В статик поля я-бы смотрел в первую очередь вообще. Главный источник текучки. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 18:32 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  У него хотелка - странная. Обычно исследование не с этого начинают. А с проблемы. Например OOM. Но он же не говорит про OOM. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 18:49 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Ну ты совсем запозорил автора. Дай ему сатисфакцию! ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:11 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  mayton У него хотелка - странная. Обычно исследование не с этого начинают. А с проблемы. Например OOM. Но он же не говорит про OOM. На современных серверах и железе OOM можно ждать неделями Да и то, скорее всего, так и не дождаться. Т.к. сервис планово перезапустят или админы или какая нибудь автоматическая тулза мониторинга Т.ч. OOM на проде, это врят ли то, с чего стоит начинать ))) А то, что память течет, часто можно и без OOM увидить. IMHO p.s. в свое время наблюдал memory leak внутри Weblogick, админы лечили патчами ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:21 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Она течет вообще каждую секунду. Архитектура Eden такая.  Как говорится.... что для Java хорошо - для С++ - смерть. P.S. Я-бы детализировал термин т.к. в него вкладывают очень негативный посыл. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:25 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Zzz79 там можно было дальше вообще не читать после того,как он написал что ГЦ классы его не собирает)) НУ да. Я тоже встал в ступор, думая о чем речь. Толи о Heap, толи о Perm Gen / Metaspace Но никакого криминала не вижу. AFAIK классы из PermGen / Metaspace вроде тоже Full GC вычищает. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:28 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Обычно программы показывающие dump памяти умеют отделять живые объекты от мертвых (на которые нет ссылки).. Т.ч. в чем проблема - не понятно. Ну и если Full GC часто отрабатывает и после его работы Old Gen видимо глазу засирается, то тоже повод задаться вопросом Лично я конфигурирую eden побольше и запрешаю менять объем памяти. Повышенный интелект у runtime считаю недостатком, чем достоинством. Лично я люблю, что бы настройки были прибиты гвоздями А то в результате получается "Там автоматик мемори менеджемнт. Оракл умный. Ему виднее" ( C ) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:34 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Ну если он свой класслоадер делает то вполне возможно. Хотя его первый пост больше похож на оговорку. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:50 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Zzz79 класс это шаблон и его удалить нельзя ниоткуда) "класс это шаблон" ))) AFAIK JVM файлы .class загружает в Perm Gen / Metaspace. Откуда они замечательно удаляются. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 19:54 | 
  
  
  
   | 
||
| 
 
Инструмент для профилирования программы 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Злые Вы. Все же фраза "экземпляры моих классов" достаточно длинная. Если следить за терминологической верностью, то буквы быстрее закончатся А если, к тому же, сначала попытаться дать терминологически верное определение самих терминов, то все остальные топики можно закрывать до конца века ))) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 09.06.2020, 20:00 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=59&msg=39967475&tid=2120789]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    3ms | 
check topic access:  | 
    3ms | 
track hit:  | 
    41ms | 
get topic data:  | 
    9ms | 
get forum data:  | 
    2ms | 
get page messages:  | 
    44ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 229ms | 
| total: | 354ms | 

| 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.