Diferencia entre revisiones de «Programación en Vala/Funcionalidades avanzadas del lenguaje»

Contenido eliminado Contenido añadido
m PNG -> SVG
Línea 677:
Los lugares dónde se producen las referencias y los borrados de referencias se han comentado para una mejor comprensión del ejemplo. La siguiente figura muestra la situación después de que los nodos '''A''', '''B''' y '''C''' hayan sido asignados y enlazados:
 
[[Archivo:Doubly linked list insert after.pngsvg]]
 
Cada flecha representa un enlace a un objeto de la lista doblemente enlazada. Se puede ver como en el ejemplo cada vez que se asigna el objeto a un enlace se aumenta el contador de referencias. Al finalizar todos las asignaciones de los objetos se deben obtener un contador de referencias de dos para cada nodo. Cuando se finalice el uso de los nodos éstos se eliminará la referencia a ellos, por lo que el contador de referencias se valdrá 1 y no 0 por lo que la memoria que ocupan no será liberada. En este caso el programa finalizará y el trabajo que no ha realizado el programa (liberar esos recursos) lo hará el sistema operativo. Sin embargo que pasaría si el programa fuera algo así: