HttpShutdownRequestQueue 함수(http.h)
HttpShutdownRequestQueue 함수는 지정된 요청 큐 프로세스에 대한 큐 요청을 중지합니다. HttpReceiveHttpRequest에 대한 미해결 호출이 취소됩니다.
구문
HTTPAPI_LINKAGE ULONG HttpShutdownRequestQueue(
[in] HANDLE RequestQueueHandle
);
매개 변수
[in] RequestQueueHandle
종료되는 요청 큐에 대한 핸들입니다. 요청 큐가 생성되고 HttpCreateRequestQueue 함수에 대한 호출에서 해당 핸들이 반환됩니다.
반환 값
함수가 성공하면 NO_ERROR 반환합니다.
함수가 실패하면 다음 오류 코드 중 하나를 반환합니다.
값 | 의미 |
---|---|
|
ReqQueueHandle 매개 변수에 유효한 요청 큐가 없습니다.
애플리케이션에 요청 큐를 종료할 수 있는 권한이 없습니다. |
설명
HttpShutdownRequestQueue 는 미해결 요청을 취소하고 요청 큐 프로세스의 모든 처리를 중지합니다. 다음 단계는 이 함수가 호출될 때 수행됩니다.
- 요청 큐 프로세스는 정리를 위해 표시되며 새 요청은 요청 큐 프로세스로 라우팅되지 않습니다.
- 호출 프로세스가 컨트롤러인 경우 미해결 HttpWaitForDemandStart 호출이 취소됩니다.
- 호출 프로세스에서 보류 중인 HttpReceiveHttpRequest 호출이 취소됩니다.
- 호출 프로세스에 이미 바인딩된 요청은 취소됩니다.
- 요청 큐 프로세스에 큐에 대기 중인 보류 중인 요청이 다른 요청 큐 프로세스로 다시 라우팅됩니다. 다른 요청 큐 프로세스를 사용할 수 없는 경우 요청 큐가 닫혀 있거나 다른 비 컨트롤러 요청 큐 프로세스가 시작될 때까지 보류 중인 요청이 저장됩니다.
- 호출 프로세스에서 시작된 보류 중인 HttpWaitForDisconnect 호출이 취소됩니다.
- 호출 프로세스로 표시된 미해결 응답은 영향을 받지 않으며 제대로 완료됩니다.
요청 큐 핸들이 여러 프로세스에서 공유되는 경우 HttpShutdownRequestQueue 는 호출 프로세스로 정리를 제한합니다. 현재 요청 큐에서 작업 중인 다른 프로세스는 영향을 받지 않습니다.
HttpShutdownRequestQueue 는 애플리케이션에서 요청 큐 프로세스를 재활용하는 데 사용할 수 있습니다. 이를 위해 요청 큐를 다른 프로세스와 공유하는 프로세스를 종료하기 전에 HttpShutdownRequestQueue 가 호출됩니다. HttpShutdownRequestQueue가 반환되면 프로세스를 안전하게 종료하거나 재활용할 수 있습니다.
요구 사항
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | http.h |
라이브러리 | Httpapi.lib |
DLL | Httpapi.dll |