He escrito un HttpModule que genera un hilo de fondo. Estoy usando el hilo como una tarea programada que se ejecuta en proceso, lo que es realmente útil.¿Cuáles son algunas de las mejores prácticas para administrar subprocesos de fondo en IIS?
¿Cuáles son las mejores prácticas para realizar un seguimiento de este hilo? Nunca he hecho esto antes, y estoy un poco confundido acerca de algunos aspectos de la misma:
¿Cómo sé si el hilo sigue corriendo? Veo que hace su trabajo, pero ¿hay alguna otra manera de saber si todavía está vivo? Descargué ProcMon, pero w3wp.exe genera un boatload de subprocesos, así que no tenía idea de cuál era mi hilo. Lo llamé, pero eso no ayudó.
¿Cómo "atrapo" el hilo si se muere? ¿Hay algún tipo de método Dispose donde pueda hacer que escriba en EventLog o algo si falla? ¿Una "declaración de muerte" o algo así?
¿Cómo detengo activamente el hilo? Si quiero que deje de ejecutar este proceso en segundo plano, ¿cómo lo elimino sin tener que rebotar IIS?
¿Hay alguna forma de volver a iniciarlo, independientemente del HttpModule? (Supongo que la respuesta a esto es no ...)
Editar: Solo para aclarar, la intención es que mi hilo nunca desaparece. Se ejecuta una función, luego se va a dormir por un par de minutos, luego se despierta y ejecuta la función nuevamente. No es como si estuviera haciendo una tarea y luego terminara.
¿Estás recibiendo un error system.timeout? – TStamper
sin tener en cuenta. eso no debe aplicarse a esto – TStamper