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$
Mostrar la cita
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.
#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...

Mostrar la cita
in message
Mostrar la cita
que hace es liberar
Mostrar la cita
inútiles) con
Mostrar la cita
si es a partir de
Mostrar la cita
una referencia al
Mostrar la cita
Collector no lo elimina.
Mostrar la cita
#3 A.Poblacion
30/03/2005 - 07:51 | Informe spam
"Jorge peres" wrote in message
news:082f01c534a6$12c9fcd0$
Mostrar la cita
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.
Ads by Google
Search Busqueda sugerida