Compartilhar via


PSET_RESOURCE_STATUS_ROUTINE função de retorno de chamada (resapi.h)

Chamado para atualizar o status de um recurso. O tipo PSET_RESOURCE_STATUS_ROUTINE define um ponteiro para essa função.

Sintaxe

PSET_RESOURCE_STATUS_ROUTINE PsetResourceStatusRoutine;

DWORD PsetResourceStatusRoutine(
  [in] RESOURCE_HANDLE ResourceHandle,
  [in] PRESOURCE_STATUS ResourceStatus
)
{...}

Parâmetros

[in] ResourceHandle

Manipule a identificação do recurso a ser atualizado. O parâmetro ResourceHandle deve conter o mesmo identificador usado para o parâmetro ResourceHandle no ponto de entrada Abrir para esse recurso.

[in] ResourceStatus

Ponteiro para uma estrutura RESOURCE_STATUS que contém informações sobre o estado do recurso.

Valor retornado

SetResourceStatus retorna um dos seguintes valores enumerados da enumeração RESOURCE_EXIT_STATE .

Valor/código retornado Descrição
ResourceExitStateContinue
0
O recurso não foi encerrado. Os threads de trabalho podem continuar as operações Online e Offline para o recurso.
ResourceExitStateTerminate
1
O recurso foi encerrado. Os chamadores devem encerrar as operações Online ou Offline e encerrar imediatamente todos os threads de trabalho atribuídos ao recurso.

Comentários

As DLLs de recurso chamam a função de retorno de chamada SetResourceStatus para atualizar o status de um recurso depois que a função de ponto de entrada Online ou Offline retornar ERROR_IO_PENDING. Ele não deve ser chamado em nenhum outro momento. Um ponteiro para a função SetResourceStatus é passado no parâmetro SetResourceStatus para a implementação do recurso de Inicialização.

SetResourceStatus é implementado pelo Monitor de Recursos e é semelhante à função SetServiceStatus .

Atualize o estado atual de um recurso sempre que necessário depois de retornar ERROR_IO_PENDING. Se o recurso estiver em um dos estados pendentes, incremente os valores para os membros CheckPoint e WaitHint da estrutura RESOURCE_STATUS e defina o membro ResourceState como ClusterResourceOnlinePending ou ClusterResourceOfflinePending antes de começar a chamar SetResourceStatus. Chame SetResourceStatus até que ocorra uma das seguintes situações:

  • O recurso é colocado no estado ClusterResourceOnline ou ClusterResourceOffline .
  • O limite de tempo armazenado na propriedade PendingTimeout do recurso foi excedido.
Não é necessário chamar SetResourceStatus para definir o estado de um recurso como um estado pendente porque o Monitor de Recursos o define automaticamente para o estado pendente apropriado sempre que Online ou Offline retornar ERROR_IO_PENDING.

Requisitos

   
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Plataforma de Destino Windows
Cabeçalho resapi.h

Confira também

ClusWorkerTerminate

Offline

Online

Abrir

RESOURCE_EXIT_STATE

RESOURCE_STATUS

Funções de retorno de chamada de DLL de recurso

SetServiceStatus

Inicialização

Encerrar