Pregunta

Tengo una aplicación asp.net con un hilo de fondo. El hilo se inicia cuando se inicia la aplicación y se detiene correctamente cuando los extremos de la aplicación. Estoy funcionando el sitio web en un servidor compartido. Lamentablemente a veces la aplicación no se activa el evento Application_End cuando termina. Me gustaría pensar que los hilos iban a matar de todos modos, pero ese no es el caso. Actualmente tengo 4 subprocesos que se ejecutan en segundo plano. Tres de los tiempos anteriores se inició la aplicación y 1 de la sesión de la aplicación actual. ¿Cómo puedo asegurarme de que los hilos están apagados cuando finaliza la aplicación? ¿Hay una manera para que los hilos para comprobar si la aplicación se reinicia o Had ha restablecido? ¿O hay una manera de comprobar si estos hilos sin escrúpulos al iniciarse la aplicación y matarlos? Gracias de antemano.

¿Fue útil?

Solución

El uso del ThreadPool.QueueUserWorkItem () para ejecutar el código en el fondo, que se terminó cuando se descargue el dominio de aplicación. Estoy asumiendo que usted está usando un BackgroundWorker, de acuerdo con las etiquetas, y sugeriría probar este lugar. (Considerar la adición de código de ejemplo para sacar mejores respuestas.)

Gestionado ThreadPool: http://msdn.microsoft.com/en- es / library / 0ka9477y.aspx

primer plano / subprocesos de fondo: http://msdn.microsoft.com/ en-us / library / h339syd0.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top