Função QOSCloseHandle (qos2.h)
A função QOSCloseHandle fecha um identificador retornado pela função QOSCreateHandle .
Sintaxe
ExternC BOOL QOSCloseHandle(
[in] HANDLE QOSHandle
);
Parâmetros
[in] QOSHandle
Manipule para o subsistema QOS retornado por QOSCreateHandle.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será 0. Para obter informações de erro estendidas, chame GetLastError.
Código de retorno | Descrição |
---|---|
|
O parâmetro QOSHandle é inválido. |
Comentários
Todos os fluxos adicionados ao identificador que está sendo fechado são imediatamente removidos do sistema. Qualquer tráfego saindo de um soquete usado para criar esses fluxos não será mais marcado com valores de prioridade. Todas as operações pendentes nesses fluxos são concluídas imediatamente com ERROR_ABORTED.
Se algum cliente estava sendo rastreado por meio do identificador que está sendo fechado por uma chamada anterior para a função QOSStartTrackingClient , QOSCloseHandle indica que o aplicativo não está mais usando o ponto de extremidade do cliente.
Exemplos
A função "CleanUpQos" a seguir ilustra o uso de QOSRemoveSocketFromFlow e QOSCloseHandle:
Consulte o SDK do Windows para obter uma listagem de código de exemplo completa. Pasta do SDK: Samples\NetDs\GQos\Qos2
O arquivo de cabeçalho Winsock2.h deve ser incluído para usar identificadores ou funções definidos pelo Winsock.
int CleanUpQos( HANDLE qosHandle,
SOCKET connSocket,
QOS_FLOWID qosFlowId,
DWORD qosFlags // qosFlags must be 0
)
{
// To ensure against generating an ERROR_OPERATION_ABORTED exception
// use a separate thread and Mutex protection to verify completion
// of QOSRemoveSocketFromFlow before calling QOSCloseHandle.
int result = 0;
if (qosFlowId != 0)
{
if( QOSRemoveSocketFromFlow(
qosHandle,
connSocket,
qosFlowId,
qosFlags) != TRUE)
result = WSAGetLastError();
}
// Under Mutex protection, add Wait function here.
if (qosHandle != NULL)
{
if( QOSCloseHandle(qosHandle) != TRUE)
result = WSAGetLastError();
}
return(result);
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | qos2.h (inclua Qos2.h) |
Biblioteca | Qwave.lib |
DLL | Qwave.dll |