PSET_RESOURCE_STATUS_ROUTINE Rückruffunktion (resapi.h)
Wird aufgerufen, um die status einer Ressource zu aktualisieren. Der PSET_RESOURCE_STATUS_ROUTINE-Typs definiert einen Zeiger auf diese Funktion.
Syntax
PSET_RESOURCE_STATUS_ROUTINE PsetResourceStatusRoutine;
DWORD PsetResourceStatusRoutine(
[in] RESOURCE_HANDLE ResourceHandle,
[in] PRESOURCE_STATUS ResourceStatus
)
{...}
Parameter
[in] ResourceHandle
Behandeln Sie die Identifizierung der zu aktualisierenden Ressource. Der ResourceHandle-Parameter sollte denselben Handle enthalten, der für den ResourceHandle-Parameter im Einstiegspunkt Open für diese Ressource verwendet wird.
[in] ResourceStatus
Zeiger auf eine RESOURCE_STATUS Struktur, die Informationen zum Zustand der Ressource enthält.
Rückgabewert
SetResourceStatus gibt einen der folgenden Werte zurück, die aus der RESOURCE_EXIT_STATE-Enumeration aufgelistet sind.
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Die Ressource wurde nicht beendet. Workerthreads können Online- und Offlinevorgänge für die Ressource fortsetzen. |
|
Die Ressource wurde beendet. Aufrufer sollten Online - oder Offlinevorgänge beenden und sofort alle Workerthreads beenden, die der Ressource zugewiesen sind. |
Hinweise
Ressourcen-DLLs rufen die SetResourceStatus-Rückruffunktion auf, um die status einer Ressource zu aktualisieren, nachdem ihre Online- oder Offline-EinstiegspunktfunktionERROR_IO_PENDING zurückgegeben wurde. Es sollte nicht zu einem anderen Zeitpunkt aufgerufen werden. Ein Zeiger auf die SetResourceStatus-Funktion wird im Parameter SetResourceStatus an die Implementierung von Startup der Ressource übergeben.
SetResourceStatus wird vom Ressourcenmonitor implementiert und ähnelt der SetServiceStatus-Funktion .
Aktualisieren Sie den aktuellen Zustand einer Ressource bei Bedarf, nachdem Sie ERROR_IO_PENDING zurückgegeben haben. Wenn sich die Ressource in einem der ausstehenden Zustände befindet, erhöhen Sie die Werte für die CheckPoint - und WaitHint-Member der RESOURCE_STATUS-Struktur , und legen Sie das ResourceState-Element auf ClusterResourceOnlinePending oder ClusterResourceOfflinePending fest, bevor Sie mit dem Aufrufen von SetResourceStatus beginnen. Rufen Sie SetResourceStatus auf, bis eine der folgenden Situationen auftritt:
- Die Ressource wird entweder im Status ClusterResourceOnline oder ClusterResourceOffline platziert.
- Das in der PendingTimeout-Eigenschaft der Ressource gespeicherte Zeitlimit wurde überschritten.
Anforderungen
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2008 Enterprise, Windows Server 2008 Datacenter |
Zielplattform | Windows |
Kopfzeile | resapi.h |