[PIPython] Oggetti referenziati che non usiamo piu....

Alex Martelli aleaxit
Ven 19 Nov 2004 15:16:41 CET


On Friday 06 February 2004 05:29 pm, Skyblaze wrote:
> Salve, è la mia prima volta sulla mailing list italiana ed avrei un
> dubbio da chiarire.
> Sapendo che, quando agiamo su oggetti immutabili come stringhe ad ogni
> modifica ci crea un oggetto nuovo, come bisogna approcciarsi al problema
> dei vecchi oggetti ancora referenziati che pero non useremo piu nel
> programma ma che rimangono cmq ad usare una prozione di memoria?
> Faccio un es banale:
> s1 = "ciao"
> s2 = "a tutti"
> s3 = s1 + s2
>
> Nel precedente es gli oggetti "ciao" e "a tutti" referenziati
> rispettivamente da s1 e s2 dopo l'operazione di concatenamento non ci
> serviranno piu, per cui è buona norma cancellarli(kesso con la funzione
> del())?Altrimenti la garbage collecction non li cancellera finche
> rimarrano referenziati.

A mio parere val la pena di rimuovere s1 ed s2 (con l'istruzione del, non
e` una funzione) se e solo se gli oggetti a cui fanno riferimento sono in
qualche modo onerosi _E_ s1 ed s2, se non esplicitamente rimosse, si
troverebbero ad avere lunga vita.  Usando pochissime variabili globali,
il problema delle variabili di lunga vita scompare (e con esso tanti altri).


Alex




More information about the Python mailing list