Voto por lo mismo. Si no cierras las conexiones a la base de datos aquello empieza a devorarse a sí mismo a poco que le des candela. Ojo también al ámbito de datareaders y qué se deja ahí metido. El 5 de mayo de 2014, 23:53, f5inet <f5inet@xxxxxxxxx> escribió: > suena a que las conexiones a la BBDD no se cierran explicitamente en el > webservice y se queda con mogollon de conexiones a la BBDD abiertas. hasta > que no se reinicia el runtime o se fuerza un GC no se liberan > 'implicitamente' las conexiones. > > de todas maneras, creo que una llamada a System.GC.Collect() deberia ser > suficiente. > > te recomendaria hacer un LOG en cada webservice, que logueara el resultado > de GC.GetTotalMemory(false), y ver si a partir de cierta memoria ocupada > empieza a quedarse tonto el webservice. si es asi, con hacer que se ejecute > el GC.Collect() si lo que devuelva GC.GetTotalMemory(false) es mas del 50% > de cuando se queda tonto, deberia ser suficiente. > > tambien es posible que necesites llamar a GC.WaitForPendingFinalizers(), > para asegurarte que los objetos 'tontos' son finalizados correctamente > antes de seguir ejecutando codigo y metiendo mas basura al Heap. > > > El 5 de mayo de 2014, 21:43, Carlos Melgarejo > <zerocool.cmg@xxxxxxxxx>escribió: > > Buenas noches BOFHmanos, >> >> Tengo un problema con el GC de .NET y me gustaría saber si alguno lo ha >> tenido y como lo puedo solucionar. >> >> Expongo el pifostio: >> >> Tengo una aplicación, la cual saca chicha de una bbdd (irremediablemente) >> SQLServer. En un principio estaba App -> BBDD, todo funcionando a la >> perfección y la hostia de rápido. >> >> Llego el momento en el que el cliente pidió un WebService, y debía ser en >> .NET C#. >> >> Aquí viene el problema, el WS, tras 3 o 4 días, se queda atontado y >> bloquea todo el sistema de datos, teniendo que reiniciar el site de IIS. >> >> En uno de los bloqueos, dijimos a los técnicos (por llamarlos de alguna >> manera) que no reiniciaran, y lanzamos un forzado de limpieza de GC, dando >> en la clave del bloqueo. Al limpiarse, volvió a la vida la criaturita. >> >> Entonces, sabéis de alguna forma de que no pase esto con el Recolector? >> >> La última opción es poner un forzado de limpieza cada noche, o incluso >> (mucho mas hardcore) un forzado de limpieza, al final de cada petición. >> >> Muchas gracias por las respuestas que podáis dar. >> >> Un saludo y a cuidarse. >> > >