HTTPShutdownRequestQueue 函式 (HTTP.h)

HttpShutdownRequestQueue函式會停止對指定的要求佇列進程進行佇列要求。 取消對 HttpReceiveHttpRequest的未處理呼叫。

語法

HTTPAPI_LINKAGE ULONG HttpShutdownRequestQueue(
  [in] HANDLE RequestQueueHandle
);

參數

[in] RequestQueueHandle

關閉之要求佇列的控制碼。 系統會建立要求佇列,並透過呼叫 HttpCreateRequestQueue 函式傳回其控制碼。

傳回值

如果函式成功,它會傳回 NO_ERROR

如果函式失敗,它會傳回下列其中一個錯誤碼。

意義
ERROR_INVALID_PARAMETER
ReqQueueHandle參數不包含有效的要求佇列。

應用程式沒有關閉要求佇列的許可權。

備註

HttpShutdownRequestQueue 會取消未處理的要求,並停止對要求佇列進程進行的所有處理。 呼叫此函式時,會執行下列步驟:

  1. 要求佇列進程會標示為清除,且不會將任何新要求路由傳送至要求佇列進程。
  2. 如果呼叫進程是控制器,則會取消未處理的 HttpWaitForDemandStart 呼叫。
  3. 從呼叫進程解除擱置的 HttpReceiveHttpRequest 呼叫。
  4. 已系結至呼叫進程的要求會取消。
  5. 排入佇列至要求佇列進程的未傳回擱置要求,會重新路由傳送至另一個要求佇列進程。 如果沒有其他要求佇列進程可用,則會儲存擱置的要求,直到要求佇列關閉,或啟動另一個非控制器要求佇列進程為止。
  6. 已取消呼叫進程所起始的 擱置 HttpWaitForDisconnect 呼叫。
  7. 呼叫進程所指出的未處理回應不會受到影響,它們已正確完成。

請注意,如果要求佇列控制碼是由多個進程共用, HttpShutdownRequestQueue 會將清除限制為呼叫進程。 目前處理要求佇列的其他進程不會受到影響。

HttpShutdownRequestQueue 可由應用程式用來回收要求佇列進程。 為此,在終止與其他進程共用要求佇列的進程之前,會先呼叫 HttpShutdownRequestQueue在 HttpShutdownRequestQueue傳回之後,進程可以安全地終止或回收。

需求

   
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 HTTP.h
程式庫 Httpapi.lib
Dll Httpapi.dll

另請參閱

HTTP 伺服器 API 2.0 版函式

HttpCloseRequestQueue

HttpCreateRequestQueue

HttpQueryRequestQueueProperty

HttpSetRequestQueueProperty