Powinieneś mieć NIEKTÓRĄ wiedzę na temat działania funkcji czyszczenia pamięci dla Java z dwóch powodów:
Po pierwsze, jeśli nie wiesz, jak to działa, możesz przypadkowo podjąć decyzje projektowe, które prowadzą do najgorszej wydajności w Twojej aplikacji. Staje się to coraz mniej prawdopodobne w miarę poprawy GC, ale jeśli masz wybór algorytmów w swojej aplikacji, to wiedza o GC oznacza, że możesz wybrać taki, który wie, co zamierza zrobić, zamiast dowiedzieć się, że powoduje to złe zachowanie.
Po drugie, jeśli nie wiesz, jak to działa, nie możesz dostroić GC dla danej aplikacji. Większość programistów Java nigdy nie musi dostrajać GC, ponieważ domyślne parametry działają wystarczająco dobrze przez większość czasu. Jeśli zrobisz coś, co wydostanie się z tego „przez większość czasu”, może się okazać, że dostrajasz parametry GC. Robiąc to bez wiedzy na temat GC, po prostu losowo przekręcasz pokrętła - możesz uzyskać z tego coś pożytecznego, ale bardziej prawdopodobne, że jutro coś spieprzysz.
Tak więc, chociaż nie spodziewałbym się, że dobry programista Java będzie wiedział wszystko pod słońcem o GC, spodziewałbym się, że ten program na pewnym poziomie będzie wiedział, w jaki sposób GC w JVM używają funkcji i jakie są tego kompromisy. Algorytm GC.