Рет қаралды 8,240
Ближайшая конференция - Joker 2024, 9 октября (Online), 15-16 октября (Санкт-Петербург + трансляция).
Подробности и билеты: jrg.su/Ypf1HW
- -
Реклама. Публичное акционерное общество «Сбербанк России», 2RanykF1Hix
- -
Несмотря на то, что новые режимы упорядочивания доступов к памяти стали доступны еще с выходом JDK 9, немногие разработчики знакомы с ними. Хотя эти семантики все еще не имеют формального описания в модели памяти Java, они широко используются в популярных многопоточных библиотеках: JCTools, Disruptor, Agrona, Aeron и многих других. Поэтому для изучения исходного кода этих проектов нужно понимать существующие режимы упорядочивания.
Но даже для исключительно прикладных разработчиков-пользователей этих библиотек понимание свойств этих режимов позволяет осознанно подходить к выбору используемой реализации многопоточных структур данных. И все это может увеличить производительность всей системы.
В докладе последовательно рассматриваются все доступные на данный момент режимы: plain, opaque, release-acquire, volatile. Для каждого показаны его высокоуровневые свойства и примеры использования.
Доклад будет интересен всем, кто интересуется многопоточным программированием, моделями памяти и популярными lock-free библиотеками.
Презентация к докладу: squidex.jugru.team/api/assets...
#java #performance