GC in Java 9 - 15

Jawa 14 pożegnała CMS, algorytm który wciąż potrafił i osiągał, ale którego utrzymanie było conajmniej problematyczne. Czy zastępca CMSa, domyślny od J8 G1GC, daje radę? Co oznaczają zmiany jakie są do niego wprowadzane w Jawach 9-14? Jest jeszcze niegotowy? Czy jeśli tak, to czy inne algorytmy mogą pomóc? Co z Shenandoah, który jest w OpenJDK ale którego nie uświadczymy w Oracle JDK? Jeśli mamy te dwa, to po co nam ZGC? Czy może lepiej po prostu wywalić to gdzie bądź i jechać na braku śmieciarza, czyli Epsilon GC? Na te, i więcej pytań, odpowiedzi w najbliższym odcinku! Powyższy opis, mimo, że pobrzmiewa latynoską nutą narratora telenowel czy innych mydlanych oper, nie jest daleki od prawdy. CMS już w Jawie 6 był przeznaczony do odstrzału, choć dopiero przy 8 zaczęto mówić o tym głośno a przy 9 wprowadzono "deprecjację". Ale ten algorytm potrafił i potrafi, nawet teraz, wyciągnąć niezłe efekty... jeśli wiemy co, jak i KIEDY robić (a czego nie). Ponieważ jednak jego stopień skomplikowania również potrafił... to mamy nowe algorytmy: G1, Z, E i Shenandoah. I o nich porozmawiamy.

speaker photo

Tomasz Borek

Coder from Poland*. Hoping to learn something new every day.
Thankful to everybody who helps me while I hop along. Proud of: http://sckrk.com and http://geecon.org.
Co-leads: SCKRK, Polish JUG, Lambda Lounge Kraków.
I’m a flawed human, and unafraid to say so.
Into: people, software, music, role-playing, honesty, learning.
Dislikes: doing unnecessary things, doing “because I can”.
* I got it from my parents. They coded and so do I.

zobacz nagranie