Función HttpShutdownRequestQueue (http.h)

La función HttpShutdownRequestQueue detiene las solicitudes de puesta en cola para el proceso de cola de solicitudes especificado. Se cancelan las llamadas pendientes a HttpReceiveHttpRequest .

Sintaxis

HTTPAPI_LINKAGE ULONG HttpShutdownRequestQueue(
  [in] HANDLE RequestQueueHandle
);

Parámetros

[in] RequestQueueHandle

Identificador de la cola de solicitudes que se cierra. Se crea una cola de solicitudes y su identificador devuelto por una llamada a la función HttpCreateRequestQueue .

Valor devuelto

Si la función se ejecuta correctamente, devuelve NO_ERROR

Si se produce un error en la función, devuelve uno de los siguientes códigos de error.

Valor Significado
ERROR_INVALID_PARAMETER
El parámetro ReqQueueHandle no contiene una cola de solicitudes válida.

La aplicación no tiene permiso para apagar la cola de solicitudes.

Comentarios

HttpShutdownRequestQueue cancela las solicitudes pendientes y detiene todo el procesamiento en el proceso de cola de solicitudes. Los pasos siguientes se realizan cuando se llama a esta función:

  1. El proceso de cola de solicitudes está marcado para la limpieza y no se enruta ninguna nueva solicitud al proceso de cola de solicitudes.
  2. Si el proceso de llamada es un controlador, se cancelan las llamadas HttpWaitForDemandStart pendientes.
  3. Se cancelan las llamadas HttpReceiveHttpRequest pendientes desde el proceso de llamada.
  4. Las solicitudes que ya están enlazadas al proceso de llamada se cancelan.
  5. Las solicitudes pendientes no recibidas que se ponen en cola en el proceso de cola de solicitudes se vuelven a enrutar a otro proceso de cola de solicitudes. Si no hay ningún otro proceso de cola de solicitudes disponible, las solicitudes pendientes se guardan hasta que se cierra la cola de solicitudes o se inicia otro proceso de cola de solicitudes que no es de controlador.
  6. Se cancelan las llamadas HttpWaitForDisconnect pendientes iniciadas por el proceso de llamada.
  7. Las respuestas pendientes indicadas por el proceso de llamada no se ven afectadas, se completan correctamente.

Tenga en cuenta que si varios procesos comparten el identificador de la cola de solicitudes, HttpShutdownRequestQueue limita la limpieza al proceso de llamada. Otros procesos que trabajan actualmente en la cola de solicitudes no se ven afectados.

Las aplicaciones pueden usar HttpShutdownRequestQueue para reciclar los procesos de cola de solicitudes. Para ello, se llama a HttpShutdownRequestQueue antes de finalizar un proceso que comparte la cola de solicitudes con otros procesos. Después de que HttpShutdownRequestQueue vuelva, el proceso se puede finalizar o reciclar de forma segura.

Requisitos

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado http.h
Library Httpapi.lib
Archivo DLL Httpapi.dll

Consulte también

Funciones de la API de servidor HTTP versión 2.0

HttpCloseRequestQueue

HttpCreateRequestQueue

HttpQueryRequestQueueProperty

HttpSetRequestQueueProperty