Articles of appdomain

¿Cómo puedo evitar que CompileAssemblyFromSource pierda memoria?

Tengo un código C # que usa CSharpCodeProvider.CompileAssemblyFromSource para crear un ensamblaje en la memoria. Después de que el ensamblado se recolectó como basura, mi aplicación usa más memoria de la que tenía antes de crear el ensamblaje. Mi código está en una aplicación web ASP.NET, pero he duplicado este problema en WinForm. Estoy usando […]

Campos estáticos en AppDomain

Estoy experimentando ideas sobre el uso de AppDomain para administrar algún código heredado que contiene muchos campos estáticos en un entorno de subprocesos múltiples. Leí esta pregunta: ¿Cómo usar un dominio de aplicación para limitar el scope de una clase estática para uso seguro de subprocesos? , pensé que era bastante prometedor y decidí probarlo […]

¿Cómo cargar un ensamblado .NET para operaciones de reflexión y luego descargarlo?

Estoy escribiendo una herramienta para informar sobre las aplicaciones .NET implementadas en entornos y regiones dentro de los sistemas de mi cliente. Me gustaría leer los valores de los atributos de ensamblaje en estos ensamblajes. Esto se puede lograr usando Assembly.ReflectionOnlyLoad , sin embargo, incluso este enfoque mantiene el ensamblaje cargado. El problema aquí es […]

Compartir datos entre AppDomains

Tengo un proceso que puede tener múltiples AppDomains. Cada AppDomain recoge algunas estadísticas. Después de un tiempo específico, quiero acumular estas estadísticas y guardarlas en un archivo. Una forma de hacerlo es Remoting, que quiero evitar. La única otra técnica que tengo en mente es guardar los datos de cada dominio de aplicación en un […]

Uso de AppDomain en C #

¿Cuál es el uso más importante de AppDomains en C #?

¿Cómo mantener activos los ensamblados de ASP.NET en AppDomain?

Escenario: tengo una aplicación ASP.NET empresarial n-Tier implementada utilizando proyectos de implementación web. Todos los niveles producen ensamblajes independientes consumidos por la aplicación ASP.NET. Problema: cuando ejecuto la aplicación. por primera vez después del despliegue, lleva mucho tiempo cargar ensamblajes dependientes en la memoria. Pero una vez cargada su aplicación de iluminación rápida. En caso […]

Cargando múltiples versiones del mismo ensamblaje

Estoy trabajando con un ensamblado de terceros y, lamentablemente, ahora necesito cargar su última versión y la anterior en mi proyecto, así que en tiempo de ejecución puedo decidir cuál cargar. Solo necesito uno, no los dos. Teniendo esto en cuenta, también dependo de los tipos proporcionados por los componentes, por lo que no puedo […]

¿Cómo descargar un ensamblado desde el dominio de aplicación principal?

Me gustaría saber cómo descargar un ensamblaje que se carga en el AppDomain principal. Tengo el siguiente código: var assembly = Assembly.LoadFrom( FilePathHere ); Necesito / quiero ser capaz de descargar este ensamblaje cuando haya terminado. Gracias por tu ayuda.

Cargando archivos DLL en un AppDomain separado

Quiero cargar una o más DLL de forma dinámica para que se ejecuten con una seguridad o un camino base diferente de mi aplicación principal. ¿Cómo puedo cargar estos archivos DLL en un dominio de aplicación independiente y crear una instancia de los objetos a partir de ellos?

¿Hay alguna manera de forzar que todos los ensamblados a los que se hace referencia se carguen en el dominio de la aplicación?

Mis proyectos están configurados así: Definición del proyecto” Implementacion de proyecto” Proyecto “Consumidor” El proyecto “Consumidor” hace referencia tanto a “Definición” como a “Implementación”, pero no hace referencia estática a ningún tipo en “Implementación”. Cuando se inicia la aplicación, el Proyecto “Consumidor” llama a un método estático en “Definición”, que necesita encontrar tipos en “Implementación”. […]