Auf Englisch lesen

Freigeben über


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
);

Parameter

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.

Rückgabewert

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.

Bemerkungen

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 );

Anforderungen

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.

Siehe auch

JET_ERR
JET_INSTANCE
JetCloseDatabase
JetCloseTable
JetDetachDatabase
JetEndSession
JetResetSessionContext
JetRollback
JetTerm
JetTerm2