Compartir a través de


PSET_RESOURCE_STATUS_ROUTINE función de devolución de llamada (resapi.h)

Se llama para actualizar el estado de un recurso. El tipo PSET_RESOURCE_STATUS_ROUTINE define un puntero a esta función.

Sintaxis

PSET_RESOURCE_STATUS_ROUTINE PsetResourceStatusRoutine;

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

Parámetros

[in] ResourceHandle

Controle la identificación del recurso que se va a actualizar. El parámetro ResourceHandle debe contener el mismo identificador usado para el parámetro ResourceHandle en el punto de entrada Open para este recurso.

[in] ResourceStatus

Puntero a una estructura de RESOURCE_STATUS que contiene información sobre el estado del recurso.

Valor devuelto

SetResourceStatus devuelve uno de los siguientes valores enumerados de la enumeración RESOURCE_EXIT_STATE .

Código o valor devuelto Descripción
ResourceExitStateContinue
0
El recurso no se ha terminado. Los subprocesos de trabajo pueden continuar operaciones en línea y sin conexión para el recurso.
ResourceExitStateTerminate
1
El recurso se ha terminado. Los autores de llamadas deben finalizar las operaciones en línea o sin conexión y finalizar inmediatamente todos los subprocesos de trabajo asignados al recurso.

Comentarios

Los archivos DLL de recursos llaman a la función de devolución de llamada SetResourceStatus para actualizar el estado de un recurso después de que su función de punto de entrada En línea o sin conexión haya devuelto ERROR_IO_PENDING. No debe llamarse en ningún otro momento. Se pasa un puntero a la función SetResourceStatus en el parámetro SetResourceStatus a la implementación del recurso de Startup.

El Monitor de recursos implementa SetResourceStatus y es similar a la función SetServiceStatus.

Actualice el estado actual de un recurso siempre que sea necesario después de haber devuelto ERROR_IO_PENDING. Si el recurso está en uno de los estados pendientes, incremente los valores de los miembros CheckPoint y WaitHint de la estructura RESOURCE_STATUS y establezca el miembro ResourceState en ClusterResourceOnlinePending o ClusterResourceOfflinePending antes de empezar a llamar a SetResourceStatus. Llame a SetResourceStatus hasta que se produzca una de las situaciones siguientes:

  • El recurso se coloca en el estado ClusterResourceOnline o ClusterResourceOffline .
  • Se ha superado el límite de tiempo almacenado en la propiedad PendingTimeout del recurso.
No es necesario llamar a SetResourceStatus para establecer el estado de un recurso en un estado pendiente porque Resource Monitor lo establece automáticamente en el estado pendiente adecuado siempre que Online o Offline devuelva ERROR_IO_PENDING.

Requisitos

   
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2008 Enterprise, Windows Server 2008 Datacenter
Plataforma de destino Windows
Encabezado resapi.h

Consulte también

ClusWorkerTerminate

Sin conexión

En línea

Abrir

RESOURCE_EXIT_STATE

RESOURCE_STATUS

Funciones de devolución de llamada de DLL de recursos

SetServiceStatus

Startup

Terminate