Ver Mensaje Individual
  #5 (permalink)  
Antiguo 25/07/2007, 01:34
tammander
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 19 años, 4 meses
Puntos: 7
Re: rs.close vs rs = nothing

Puedes liberar memoria destruyendo el objeto para ASP pero para ADO seguirá instanciado. Esto es válido para todos los objetos contra ADO excepto Command que lo que hace es ejecutar un comando ADO internamente con lo cual el abre y cierra los objetos que necesita (obviamente debes instanciarlo con Set para ASP) Si os fijais Command no tiene el método Close.

Pautas contra ASP:

- Se instancia el objeto con Set
- se realizan operaciones con el objeto
- Se destruye el objeto asignando al objeto el valor Nothing

Pautas contra ADO

- Se abre la conexion con los métodos que poseen sus objetos. (Open)
- Se ejecutan las operaciones con la BD
- Se cierra la conexion con la BD y se libera ADO

Hay que tener en cuenta que, al igual que con otros objetos COM, existen dos capas entre la programación y la BD: La capa que instancia el objeto para ASP y la que instancia el objeto para ADO. Es cierto que cuando el servidor envia la página procesada al cliente, se cierran y liberan todas las instancias (a no ser que mantengas algun objeto a traves de sesiones, cosa totalmente desaconsejable en servidores con mucha carga) pero es una buena práctica tal como dice Al Zuwaga y ayuda al servidor a ir liberando espacio de memoria el instanciar/abrir objetos y cerrarlos/destruirlos lo antes posible.



Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -