Freigeben über


Transaktions-Manager-Objekte

Der Standard Zweck des Transaktions-Manager-Objekts besteht darin, einen CLFS-Protokolldatenstrom (Common Log File System) zu erstellen und zu verwalten, mit dem KTM status Informationen zu Transaktionen aufzeichnen kann.

Das Transaktions-Manager-Objekt enthält auch einen virtuellen Uhrwert , der von KTM verwaltet und verwendet wird, um Informationen im Protokolldatenstrom des Objekts zu sequenzieren.

KTM stellt eine Reihe von Transaktions-Manager-Objektroutinen bereit, die TPS-Komponenten im Kernelmodus aufrufen können. KTM bietet auch einen ähnlichen Satz von Benutzermodusroutinen, die von Benutzermodusanwendungen aufgerufen werden können. Weitere Informationen zu den Benutzermodusroutinen finden Sie im Microsoft Windows SDK.

KTM erstellt ein Transaktions-Manager-Objekt, wenn ein Ressourcen-Manager ZwCreateTransactionManager aufruft. In der Regel erstellt jeder Ressourcen-Manager in einem TPS ein Transaktions-Manager-Objekt. Sie können aber auch ein TPS entwerfen, in dem mehrere Ressourcenmanager ein einzelnes Transaktions-Manager-Objekt gemeinsam nutzen.

TPS-Komponenten können zusätzliche Handles für ein vorhandenes Transaktions-Manager-Objekt öffnen, indem sie ZwOpenTransactionManager aufrufen. Wenn Ihr TPS beispielsweise über mehrere Ressourcen-Manager verfügt, die ein einzelnes Transaktions-Manager-Objekt gemeinsam nutzen, ruft ein Ressourcen-Manager ZwCreateTransactionManager auf und übergibt dann die Objekt-GUID an die anderen Ressourcenmanager, damit diese ZwOpenTransactionManager aufrufen können.

Ressourcen-Manager schließen ihre Handles für Transaktions-Manager-Objekte, indem sie ZwClose aufrufen.

Das Betriebssystem löscht das Objekt, nachdem das letzte Handle geschlossen wurde und KTM alle Verweise auf das Objekt freigegeben hat.