Ходячие объекты-мертвецы, или GC всегда прав

Автоматическое управление памятью — одна из основных особенностей Java и других managed языков. При этом в спецификации про GC написано очень мало: как именно собирать мусор каждой конкретной реализации JVM, предлагается решать самостоятельно. В результате для сборки мусора существует огромное количество стратегий и степеней свободы. Например, когда именно GC должен приходить за мертвым объектом? Ответ не так очевиден, а любое решение может повлиять на ход исполнения пользовательской программы.

В докладе обсудим, зачем коллектору оставлять мертвые объекты в памяти, как это сказывается на вашем приложении и как выжить во время нашествия ходячих объектов-мертвецов.

Main language Russian Proposal
Audience level Expert & Senior
Type of presentation Slides only

Ivan Ugliansky


Works at Excelsior since 2011, is one of the Excelsior JET developers (Java SE certified implementation based on optimizing AOT compilation). Basically, works with runtime: GC, class loading, concurrency maintenance, profiling and so on. Besides, supports one plugin for the JET-compiled applications' debugging in GDB and sometimes writes for Excelsior JET Team Blog. Also, Ivan is co-founder and co-lead of JUGNsk — an official Java Users Group in Novosibirsk, helps to organize meetups about Java and JVM. In his free time teaches C/C++ courses at Novosibirsk State University.

Blog https://www.excelsiorjet.com/blog/
Company Excelsior LLC
Twitter

:
Back