Compartilhar via


Função de retorno de chamada PWAITCHAINCALLBACK (wct.h)

Uma função de retorno de chamada definida pelo aplicativo que recebe uma cadeia de espera. Especifique esse endereço ao chamar a função OpenThreadWaitChainSession .

O tipo PWAITCHAINCALLBACK define um ponteiro para essa função de retorno de chamada. WaitChainCallback é um espaço reservado para o nome da função definida pelo aplicativo.

Sintaxe

PWAITCHAINCALLBACK Pwaitchaincallback;

void Pwaitchaincallback(
  HWCT WctHandle,
  DWORD_PTR Context,
  DWORD CallbackStatus,
  LPDWORD NodeCount,
  PWAITCHAIN_NODE_INFO NodeInfoArray,
  LPBOOL IsCycle
)
{...}

Parâmetros

WctHandle

Um identificador para a sessão WCT criada pela função OpenThreadWaitChainSession .

Context

Um ponteiro opcional para uma estrutura de contexto definida pelo aplicativo especificada pela função GetThreadWaitChain .

CallbackStatus

O retorno de chamada status. Esse parâmetro pode ser um dos valores a seguir ou um dos outros códigos de erro do sistema.

Valor Significado
ERROR_ACCESS_DENIED
O chamador não tinha privilégio suficiente para abrir um thread de destino.
ERROR_CANCELLED
A sessão assíncrona foi cancelada por uma chamada para a função CloseThreadWaitChainSession .
ERROR_MORE_DATA
O buffer NodeInfoArray não é grande o suficiente para conter todos os nós na cadeia de espera. O parâmetro NodeCount contém o número de nós na cadeia. A cadeia de espera retornada ainda é válida.
ERROR_OBJECT_NOT_FOUND
Não foi possível localizar o thread especificado.
ERROR_SUCCESS
A operação foi concluída com sucesso.
ERROR_TOO_MANY_THREADS
O número de nós excede WCT_MAX_NODE_COUNT. A cadeia de espera retornada ainda é válida.

NodeCount

O número de nós recuperados até WCT_MAX_NODE_COUNT. Se a matriz não puder conter todos os nós da cadeia de espera, a função falhará, CallbackStatus será ERROR_MORE_DATA e esse parâmetro receberá o número de elementos de matriz necessários para conter todos os nós.

NodeInfoArray

Uma matriz de estruturas de WAITCHAIN_NODE_INFO que recebe a cadeia de espera.

IsCycle

Se a função detectar um deadlock, essa variável será definida como TRUE; caso contrário, ele será definido como FALSE.

Retornar valor

Nenhum

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 wct.h

Confira também

GetThreadWaitChain

OpenThreadWaitChainSession

WAITCHAIN_NODE_INFO