JetStopServiceInstance2-Funktion
Gilt für: Windows | Windows Server
Die JetStopServiceInstance2-Funktion bereitet vor dem Anhalten eine instance und eine instance nach Resume vor. Anhalten und Fortsetzen sind Ausführungszustände des Windows Store-App-Lebenszyklusmodells.
Die JetStopServiceInstance2-Funktion wurde in Windows 8 eingeführt.
JET_ERR JET_API JetStopServiceInstance2(
_In_ JET_INSTANCE instance
_In_ const JET_GRBIT grbit
);
instance
Das Ziel instance. Der datentyp JET_INSTANCE ist ein Handle für die instance der Datenbank, die für einen Aufruf der JET-API verwendet werden soll. Dieses Handle wird abgerufen, wenn Sie eine instance der Datenbank erstellen, indem Sie die Funktionen JetCreateInstance, JetCreateInstance2, JetInit oder JetInit2 aufrufen.
grbit
Eine Gruppe von Bits, die einen oder mehrere der in der folgenden Tabelle aufgeführten und definierten Werte angibt.
Wert |
Beschreibung |
---|---|
JET_bitStopServiceAll |
Beendet alle ESE-Dienste (Extensible Storage Engine) für die angegebene instance. |
JET_bitStopServiceBackgroundUserTasks |
Beendet neu startbare clientspezifische Hintergrundwartungsaufgaben (z. B. B+ Strukturdefragmentierung). |
JET_bitStopServiceQuiesceCaches |
Löscht alle modifiziert Caches auf dem Datenträger. Dieser Wert ist asynchron und kann abgebrochen werden. |
JET_bitStopServiceResume |
Setzt zuvor ausgestellte StopService-Vorgänge fort; Das heißt, der Dienst wird neu gestartet. Dieser Wert kann mit dem grbits-Parameter kombiniert werden, um bestimmte Dienste fortzusetzen, oder mit JET_bitStopServiceAll, um alle zuvor beendeten Dienste fortzusetzen. Dieses Bit kann nur verwendet werden, um StopServiceBackgroundUserTasks und JET_bitStopServiceQuiesceCaches fortzusetzen. Wenn Sie zuvor mit JET_bitStopServiceAll aufgerufen haben, schlägt der Versuch, JET_bitStopServiceResume zu verwenden, fehl. Wenn der zweite Fortsetzungsschritt nicht aufgerufen wird, wird die Leistung der Anwendung beeinträchtigt. In dieser Situation wird der Prüfpunkt bei 0 (null) beibehalten. |
Diese Funktion gibt den Datentyp JET_ERR mit einem der folgenden Rückgabecodes zurück. Weitere Informationen zu möglichen ESE-Fehlern finden Sie unter Erweiterbare Speichermodulfehler und Fehlerbehandlungsparameter.
Rückgabecode |
Beschreibung |
---|---|
JET_errSuccess |
Der Vorgang wurde erfolgreich abgeschlossen. |
Diese Funktion ermöglicht es einer JET-Anwendung, den Datenbankcache in einen sauber oder fast sauber Zustand (mit dem E/A-Leerlauf des Betriebssystems) zu verschieben, sodass die Wiederherstellung schnell erfolgen würde, wenn die Anwendung beendet werden sollte. Dieser Ansatz wird gegenüber dem Beenden von JET durch Aufrufen der JetTerm - oder JetDetachDatabase-Funktionen bevorzugt, sodass die Anwendung im häufigeren Szenario einfach nicht bereitgestellt wird und später die Anwendung über den gesamten Cache verfügt und so bald wie möglich einsatzbereit ist.
Wenn diese Funktion erfolgreich ist, bereitet sie den Datenbankcache auf eine bevorstehende Unterbrechung vor. Diese Funktion führt die Arbeit in die Warteschlange eines Hintergrundarbeitsthreads und kehrt sofort zum Aufrufer zurück. Die Funktion sollte basierend auf der PLM VisibilityNotice und nicht auf dem Aufruf des Ereignishandlers für das Anhalten der Anwendung aufgerufen werden, um sicherzustellen, dass JET Zeit hat, modifiziert Puffer zu leeren, bevor PLM den Prozess anbricht/beendet. Intern löst JET eine sofortige Verteilung der Prüfpunktwartung bei Konfigurationsänderungen aus (entweder Prüfpunktupdate oder dieses neue Stilllegungs-Bit). Weitere Informationen zu VisibilityNotice-Ereignissen finden Sie unter VisibilityChangedEventArgs-Klasse.
Diese Funktion muss zweimal aufgerufen werden. Sie wird aufgerufen, nachdem die Anwendung die Benachrichtigung zum Anhalten vom Betriebssystem erhalten hat, aber bevor die Anwendung angehalten wurde. Anschließend wird sie erneut aufgerufen, nachdem das Betriebssystem die Anwendung fortgesetzt hat. Beispiel:
Bei Aufruf von Suspend: JET_ERR JET_API JetStopServiceInstance2( instance, JET_bitStopServiceQuiesceCaches);
Bei Fortgesetzter Ausführung: JET_ERR JET_API JetStopServiceInstance2( instance, JET_bitStopServiceQuiesceCaches| JET_bitStopServiceResume );
Anforderung | Wert |
---|---|
Client |
Erfordert Windows 8. |
Server |
Erfordert Windows Server 2012. |
Kopfzeile |
Deklariert in Esent.h. |
Bibliothek |
Verwenden Sie ESENT.lib. |
DLL |
Erfordert ESENT.dll. |
JET_ERR
JET_INSTANCE
JetCloseDatabase
JetCloseTable
JetDetachDatabase
JetEndSession
JetResetSessionContext
JetRollback
JetTerm
JetTerm2