Francisco por supuesto que tenes razon en un punto de vista teorico, pero en la practica el GC de C# solo recolecta memoria cuando hace allocation.
Ver por ejemplo esto: http://blogs.msdn.com/tess/archive/2007/04/10/net-garbage-collector-popquiz-followup.aspx *If we exclude GC.Collect calls, this means that a GC will only occur on allocation. I have mentioned this before, but I think it is worth mentioning again... a classic mistake to make is to run a stress test and then come back 10 mins after the stress test and wonder why memory is not being released. In other words, objects may well be ready to be released but no allocations are made, meaning no GCs will occur, so memory usage will stay flat. * Gustavo. 2009/1/23 Francisco A. Lozano <[email protected]> > Si el GC no elimina esos objetos de la memoria es porque mantienes > referencias a los mismos, simple y llanamente, por mucho dispose que > hagas. > > Francisco A. Lozano > > > > 2009/1/23 Plugin <[email protected]>: > > > > Saludos a todos. > > > > En primer lugar debo agradeceros vuestra dedicación y consejo, que en > > más de una situación delicada me han salvado. > > > > La cuestión que quiero plantear es la siguiente: > > Hemos puesto en marcha una aplicación ASP.Net que emplea NHibernate. > > > > Para la gestión de las sesiones, hemos usado el "Command Pattern", de > > forma que cada caso de uso > > se enmarca en una apertura/cierre de sesión. (de forma similar a como > > se hace en el Session per view ) > > > > Ahora bien. Lo que hemos observado es que al hacer un Close o un > > Dispose de la sesión, el GC hace caso omiso, y la memoria no se está > > recuperando, de modo que tras hacer uso varios usuarios de la > > aplicación, se produce una OutOfMemoryException... > > > > He probado a hacer un test de stress haciendo apertura/cierre/dispose > > de sesiones, recuperando un objeto, y he comprobado que efectivamente, > > el uso de memoria crece, crece.... > > > > Dónde puede estar el problema? > > Hay algo que no entendí bien? > > > > Un saludo. > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano -~----------~----~----~----~------~----~------~--~---
