Garbage Collector

29/03/2005 - 22:11 por Jorge Perez | Informe spam
Estimados como puedo hacer para de una dll no sea
eliminada por el garbage collector y este siempre viva.

He estado buscando pero no encuentro como.,.,.
Saludos a todos

Preguntas similare

Leer las respuestas

#1 A.Poblacion
29/03/2005 - 22:58 | Informe spam
"Jorge Perez" wrote in message
news:011301c5349b$8bab1ef0$
Estimados como puedo hacer para de una dll no sea
eliminada por el garbage collector y este siempre viva.



El Garbage Collector NUNCA elimina una DLL. Lo único que hace es liberar
la memoria de los objetos inalcanzables (y por tanto inútiles) con
independencia de cómo se hayan creado esos objetos, tanto si es a partir de
una clase que esté en una dll como si no.
La forma de que un objeto no sea eliminado es mantener una referencia al
objeto. Mientras la referencia exista, el Garbage Collector no lo elimina.
Respuesta Responder a este mensaje
#2 Jorge peres
29/03/2005 - 23:27 | Informe spam
Lo que tu me quieres decir es que por ejemplo:
si tengo un .exe que llama a una dll el garbage collector
no elimina la referencia hasta que no cierre el .exe.

La pregunta se debe ha que yo tengo en la dll un cache,
que ocupa el .exe y he tenido problemas cuando hay tiempo
de inactividad en la aplicación es como si el cache se
hubiese borrado...

"Jorge Perez" wrote


in message
news:011301c5349b$8bab1ef0$
Estimados como puedo hacer para de una dll no sea
eliminada por el garbage collector y este siempre viva.



El Garbage Collector NUNCA elimina una DLL. Lo único


que hace es liberar
la memoria de los objetos inalcanzables (y por tanto


inútiles) con
independencia de cómo se hayan creado esos objetos, tanto


si es a partir de
una clase que esté en una dll como si no.
La forma de que un objeto no sea eliminado es mantener


una referencia al
objeto. Mientras la referencia exista, el Garbage


Collector no lo elimina.


.

Respuesta Responder a este mensaje
#3 A.Poblacion
30/03/2005 - 07:51 | Informe spam
"Jorge peres" wrote in message
news:082f01c534a6$12c9fcd0$
Lo que tu me quieres decir es que por ejemplo:
si tengo un .exe que llama a una dll el garbage collector
no elimina la referencia hasta que no cierre el .exe.



Algo asi. Por ejemplo, si en la dll existe un "public class Cache {...}" y
el exe hace "Cache xyz = new Cache();", entonces la instancia del cache que
acabas de crear no la recoge el Garbage Collector mientras el exe conserve
la variable xyz. Pero en el momento en que tu ejecutable haga "xyz=null;", o
si xyz es una variable local, se termine el bloque que la ha declarado,
entonces el Cache queda libre para ser recogido por el GC.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida