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

Skyblaze skyblaze
Ven 19 Nov 2004 15:16:41 CET


Alex Martelli wrote:

>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
>
>  
>
In che senso s1 e s2 avrebbero lunga vita?Io so che rimangono per tutta 
l'esecuzione del programma visto che la garbage collecction trova quegli 
oggetti sempre referenziati no?
Perche con poche variabili globali il problema non si pone?




More information about the Python mailing list