Recentemente abbiamo aggiornato una delle nostre applicazioni da Java 1.4 per Java 6.Modifica della garbage collection da Java 1.4 a Java 6?
Con alcuni test di performance carico &, abbiamo osservato che la memoria a disposizione rimase in generale a livelli molto più bassi in Java 6 rispetto a quello che ha usato per essere con Java 1.4.
Dopo aver effettuato alcuni profili sull'app con Java 6, abbiamo notato che molti oggetti non più referenziati da altri oggetti (cioè i candidati per la garbage collection) sono rimasti in memoria e apparentemente non sono mai stati raccolti. L'abbiamo preso come spiegazione per la memoria disponibile inferiore.
La domanda è: il modo in cui la raccolta di dati inutili si comporta è cambiato da Java 1.4 a Java 6?
Sei sicuro che gli oggetti siano veri candidati per la raccolta? Vengono raccolti se si avvia una raccolta tramite JConsole? –
Java 7 è pensato per avere ancora più "ottimizzazioni" sul garbage collector. – Steve