[Programación]Paso por valor o referencia? En las funciones en Python
Emiliano Gavilan
emilianogavilan en gmail.com
Jue Sep 20 08:28:33 ART 2012
El día 20 de septiembre de 2012 07:50, Horacio Castellini
<horacio9573 en yahoo.com.ar> escribió:
> Si un objeto int fuera inmutable como una tupla o un string,, donde el "="
> crea otro objeto inmutable, y a cada copia debería estar asignada a areas de
> memoria distinta, esto debería causar un memory overflow, por ejemplo en un
> código como este...
>
> x=0
> while True:
> x=x+3
No hay memory overflow porque, aunque el interprete crea un nuevo objeto
en cada iteración, el anterior es borrado ya que queda huérfano,
sin ninguna referencia.
Acá no estoy muy seguro, pero probablemente python use algun tipo de
reference counting en los objetos. Esto permite que se liberen rapidamente
y no como en java, en el cual el garbage collection suele aparecer en los
momentos menos oportunos haciendo que el proceso palme...
Saludos
Emiliano
Más información sobre la lista de distribución Programacion