Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Beyond ByteBuffers by Brian Goetz

Автор: Devoxx

Загружено: 2019-11-08

Просмотров: 19856

Описание:

Accessing foreign (e.g. off-heap) memory from a Java application can be useful for a number of reasons, from avoiding the costs associated with garbage collection, to sharing memory across multiple processes and/or with native code. Yet, to date, the Java SE API provides no official tools for accessing foreign memory, forcing developers to cope with less than ideal solutions. One such solution, perhaps the most widely used, is the ByteBuffer API, which allows the creation of so called "direct" byte buffers --- thus allowing users to manipulate off-heap memory directly from Java.

Another, less common, avenue by which developer can access foreign memory from Java code is through the Unsafe API, which exposes several low-level functionalities to manipulate both off-heap and on-heap memory directly, and in a very efficient fashion, thanks to its clever use of JVM intrinsics.

Unfortunately, existing approaches for accessing foreign memory are far from being ideal: on the one hand, the ByteBuffer API, which has been designed after I/O use cases, suffers from several limitations -- lack of addressing space, non-deterministic deallocation to name a few -- when used as a general purpose foreign memory API; on the other hand, using the Unsafe API -- as the name implies -- is a risky business, which can result in hard JVM crashes if the API is not used correctly.

In other words, when it comes to accessing foreign memory, no optimal solution exists - and Java developers are faced with a dilemma: should they use the safe, trodded but twisted (and possibly less efficient) ByteBuffer path or should they abandon all safety guarantees and embrace the (unsupported) Unsafe API?

In this talk we paint the path to the future: a safe, supported and efficient foreign memory access API for Java. By providing a more targeted solution to the problem of accessing foreign memory, not only developers will be freed by the limitations of the existing APIs - but they will also enjoy improved performances, as the new API will be designed from the ground-up with JIT optimizations in mind - and all without sacrificing memory access safety.

Brian Goetz is the Java Language Architect at Oracle, and was specification lead for JSR 335 (Lambda Expressions for the Java Language.) He is the author of the best-selling book "Java Concurrency in Practice" and is a frequent presenter at major industry conferences.

Beyond ByteBuffers by Brian Goetz

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

Алексей Шипилёв — Если не Unsafe, то кто: восход VarHandles

Алексей Шипилёв — Если не Unsafe, то кто: восход VarHandles

Java 21 By Brian Goetz

Java 21 By Brian Goetz

Valhalla - Where Are We? by Brian Goetz

Valhalla - Where Are We? by Brian Goetz

Memory footprint of a Java process by Andrei Pangin

Memory footprint of a Java process by Andrei Pangin

Но что такое виртуальная память?

Но что такое виртуальная память?

Навыки и навыки для DevOps с DevOps Dojos от Оливье Жака

Навыки и навыки для DevOps с DevOps Dojos от Оливье Жака

Adventures with concurrent programming in Java: A quest for predictable latency by Martin Thompson

Adventures with concurrent programming in Java: A quest for predictable latency by Martin Thompson

Java: как быстро вы сможете проанализировать 1 миллиард строк данных о погоде? • Рой ван Рейн • G...

Java: как быстро вы сможете проанализировать 1 миллиард строк данных о погоде? • Рой ван Рейн • G...

Откуда в трубке телефона берётся гудок?

Откуда в трубке телефона берётся гудок?

Thinking In Parallel by Stuart Marks and Brian Goetz

Thinking In Parallel by Stuart Marks and Brian Goetz

Java Language and Platform Futures: A Sneak Peek by Brian Goetz

Java Language and Platform Futures: A Sneak Peek by Brian Goetz

Андрей Девятов. Что ждёт Россию после 2025 года?

Андрей Девятов. Что ждёт Россию после 2025 года?

Как крутят нейронки на периферийных устройствах / База по Edge Computing от инженера из Qualcomm

Как крутят нейронки на периферийных устройствах / База по Edge Computing от инженера из Qualcomm

Программирование сокетов с помощью Java NIO — каналы, селекторы и буферы

Программирование сокетов с помощью Java NIO — каналы, селекторы и буферы

Полная история программирования, Часть 4: Java, C#, Go или golang (с разбором кода)

Полная история программирования, Часть 4: Java, C#, Go или golang (с разбором кода)

Ask the JDK Architects by Brian Goetz/Mark Reinhold

Ask the JDK Architects by Brian Goetz/Mark Reinhold

Почему мы ненавидим сериализацию Java и что мы с этим делаем, Брайан Гетц и Стюарт Маркс

Почему мы ненавидим сериализацию Java и что мы с этим делаем, Брайан Гетц и Стюарт Маркс

Java 22 and the Foreign Function & Memory API by PER MINBORG

Java 22 and the Foreign Function & Memory API by PER MINBORG

LLM и GPT - как работают большие языковые модели? Визуальное введение в трансформеры

LLM и GPT - как работают большие языковые модели? Визуальное введение в трансформеры

Brian Goetz Answers Your Java Questions

Brian Goetz Answers Your Java Questions

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]