- Reservar los espacios de memoria que serán utilizados.
- Liberar espacios de memoria utilizados anteriormente.
- Compactar los espacios de memoria libres y colocarlos consecutivamente para su mejor uso
- Administrar los espacios no utilizados.
Algunos lenguajes ya cuentan con su propia rutina recolectora de basura y generalmente la ejecuta también de forma automática sin la intervención del programador. En muchos casos será necesario que el programador programe los llamados a las rutinas recolectoras. Para estos casos el programador puede valerse de los siguientes recursos:
- Esperar a que se utilice el total de la memoria, quedando así sin memoria disponible y ejecutar la rutina.
- Fijar un porcentaje de la memoria que se utilizará y cuando el programa sobrepase este porcentaje establecido, entonces ejecutará la rutina.
- Ejecutar la rutina recolectora a ciertos intervalos de tiempo o intervalos regulares.
- Ejecutar la rutina recolectora justo antes de cada reserva de memoria.
- Permitir al programador que invoque al programador cuando el desee.
Ejemplos de lenguajes con recolector de basura
- ALGOL 68
- BASIC
- Caml
- Clean
- Eiffel
- Haskell
- Java
- JavaScript
- Lisp
- Lua
- Mercury
- ML
- Modula-3
- Oberon
- Oz
- Objective C 2.0
- Perl
- PHP
- Prolog
- Python
- Ruby
- Smalltalk
- SNOBOL
- SuperCollider
Muy buen post! faltó el comentario final donde usted debió dar su opinión. No olvide este aspecto en los futuros post!
ResponderEliminarsaludos