TJUG #89 – Java Memory Model

Kiedy:
22 wrzesień 2016@17:30 – 19:30
2016-09-22T17:30:00+02:00
2016-09-22T19:30:00+02:00
Gdzie:
Lęborska 3B
80-386 Gdańsk Oliwa

Java Memory Model czyli co każdy Java Developer powinien wiedzieć o procesorach, kompilatorach, wielowątkowości i synchronizacji

Niskopoziomowe podejście do zagadnienia jakim jest Java Memory Model (JMM). Będzie dużo teorii ale też dużo kodu.

JMM jest częścią Java Language Specification i jest zagadnieniem skomplikowanym. Samo wytłumaczenie czym jest JMM nie jest proste. Powstało wiele definicji opisujących JMM, funkcjonuje też wiele błędnych opisów modelu. Mimo, iż obecny model istnieje i został zaimplementowany już JDK5, czyli od 2004 roku, to jednak niewielu programistów czytało i rozumie tę specyfikację. Warto się z nią zapoznać, tym bardziej, że oficjalnie została zaproponowana jego modyfikacja. Opowiem jaki wpływ na działanie Waszych aplikacji będzie miała ta zmiana.

Omówimy jak działa współczesny procesor, kompilator JIT oraz w jaki sposób mogą one zoptymalizować Twój kod. Dowiecie się również, dlaczego synchronizacja jest ważna i jaki ma ona wpływ na przetwarzanie instrukcji przez procesor oraz na wydajność samej aplikacji. Pokażę również na kilku przykładach jak trudno jest wnioskować na temat wyniku działania danego programu w przypadku braku poprawnej synchronizacji.

Temat przedstawi nam Łukasz Koniecki z Dynatrace

http://www.meetup.com/Trojmiasto-Java-User-Group/events/234119239/