Насколько нам известно, память — одна из самых главных составляющих при работе JVM. Часто происходят ситуации когда ее не хватает, особенно при больших вычислениях и больших объемах данных. Совсем недавно и я сам столкнулся с такой проблемой, но не об этом речь.

Сегодня вышла небольшая статья о инструменте по поиску проблем с моделью памяти. Конечно он (инструмент)  предназначен не для крутых  гуру, т.к. возможно  использование способа с помощью просмотра  дампа  «кучи»,который  в принципе позволяет видеть, какой объект держит ссылку на коллекции. Второй способ — это использование дампа кучи и профайлера (например, JConsole – это встроенный профайлер Java, будет время сделаю статью по нему), возможно, что такая связка даст вам больше информации.

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

В любом случае пишите комментарии, присылайте ваши примеры.

Недавно я выкладывал интервью с CHARLES NUTTER где был затронут интересный вопрос, связанный с появлением нового интерфейса в Java 9 под названием JVMCI. Буквально с неделю назад  я прочитал про  проект, который как связан с этим интерфейсом. Речь идет вот об этой статье. Суть в том, что  будет доступна интересная штуковина(библиотеки AOT — Ahead-of-time compilation)   в Java 9(не факт, что выйдет именно в девятке) за авторством Владимира Козлова.

Суть изменений в том, что классы будут скомпилированы в машинный код до запуска виртуальной машины, фактически предкомпиляция. Целью является сокращение время запуска приложений.  Интересная особенность заключается в том, что не всегда  это будет оптимальный вариант,  для этого случая есть возможность отключения данной функции, фактически сделать JDK без библиотек AOT.

Будет ли у вас интерес к AOT?

Предлагаю высказаться по данному поводу в комментариях.

Всем привет. Давно хотел добавлять новости. Видимо, время пришло. Первая интересная ссылка будет  про битву за  sun.misc.Unsafe и ближайшие планы по ее удалению в Java 9.

Если рассказать кратко, то  интересная штуковина(sun.misc.Unsafe) является утилитарным классом. Попробуйте например,  добавить ее к себе в программу и обратите внимание на сообщения компилятора. Возможно, что предупреждение «warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release»  вас не напугает, а возможно,  наоборот. В любом случае мы можем увидеть функции работы с памятью, чтении и записи значений в методах этого класса.

Разговоры  и споры около Unsafe присутствуют небезосновательно, штука действительно нужная в определенных условиях. В статье рассказано про мнение   Rafael Winterhalter, про его понимание важности  sun.misc.Unsafe, описывается его точка зрения.

Изучайте, пишите, высказывайтесь. Возможно, что  у вас есть примеры использования Unsafe в  проектах.