La mia comprensione è che la specifica JVM definisce solo il comportamento di un garbage collector, ma non fornisce dettagli di implementazione. Ciò significa che spetta all'implementazione JVM creare il garbage collector.
Sembra che ci siano garbage collector di terze parti come Azul Pauseless GC . Per me, questo implica che la mia implementazione JVM, ad esempio HotSpot o JRockit, è configurata di default per utilizzare il proprio garbage collector incorporato. Ma , forse attraverso la configurazione, potrei usare un garbage collector di terze parti (come quello di Azul o un altro).
Quindi chiedo: come si fa a "scambiare" il garbage collector con un altro? Se la risposta è specifica dell'implementazione JVM, supponiamo HotSpot.