Non riesco a capire l'implementazione di alcune operazioni per le sequenze immutabili di Scala. Userò questo come esempio:Come funziona la gestione della memoria per le collezioni Scala?
def example: List[Int] = {
val list0 = List.range(1,10)
list0.tail
}
Una volta terminata la funzione, l'elenco0 è ora fuori portata. La testa di list0 sarebbe stata rimossa dalla memoria, o sarebbe list0 rimanere la stessa finché l'intera lista non viene raccolta?
Scala usa il garbage collector come Java. Quindi questa lista verrà rimossa dalla memoria quando gc verrà lanciato di nuovo da jvm e si renderà conto che questo oggetto può essere raccolto. – Everv0id