IIS: Handler de aborto trabajo en conexión del cliente Cerrar
Pregunta
Tengo un manejador que hace un trabajo duro bajo las imágenes. Se ve como http://example.com/webservice.ashx?imageparam1=100&imageparam2=200
Cada solicitud a este controlador tarda unos 2-3 segundos.
Necesito una forma de abortar la generación de imágenes si el cliente cierre la conexión (es decir, la página de cierre o envíe la solicitud para otra imagen).
¿Hay una manera de hacer esto?
Solución
Tienes que ver IsClientConnected
propiedad de HttpContext.Response
objeto. Cuando cambie a False, cancele la generación de imágenes.
No puedo proporcionar más ideas, ya que depende de la forma en que crea imagen. Solo puedo aconsejar para hacer un hilo de generación separado que pueda ser abortado del hilo principal que periódicamente verifica la conexión. Además, los recursos del generador deben limpiarse de alguna manera y eso puede ser un problema importante que aumenta la complejidad de la solución.