GetNotificationResourceManagerAsync-Funktion (ktmw32.h)
Fordert eine asynchrone Benachrichtigung für einen Ressourcen-Manager (RM) an und empfängt diese. Diese Funktion wird vom RM-Register verwendet, um Benachrichtigungen zu erhalten, wenn sich der Zustand einer Transaktion ändert.
Syntax
BOOL GetNotificationResourceManagerAsync(
[in] HANDLE ResourceManagerHandle,
[out] PTRANSACTION_NOTIFICATION TransactionNotification,
[in] ULONG TransactionNotificationLength,
[out] PULONG ReturnLength,
[in] LPOVERLAPPED lpOverlapped
);
Parameter
[in] ResourceManagerHandle
Ein Handle für den Ressourcen-Manager.
[out] TransactionNotification
Ein Zeiger auf eine TRANSACTION_NOTIFICATION-Struktur , die die erste verfügbare Benachrichtigung empfängt.
[in] TransactionNotificationLength
Die Größe des TransactionNotification-Puffers in Bytes.
[out] ReturnLength
Ein Zeiger auf eine Variable, die die tatsächliche Größe der Benachrichtigung empfängt, die vom TransactionNotification-Parameter empfangen wird.
[in] lpOverlapped
Ein Zeiger auf eine OVERLAPPED-Struktur , die für asynchrone Vorgänge erforderlich ist.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (null). Um erweiterte Fehlerinformationen zu erhalten, rufen Sie die GetLastError-Funktion auf.
Die folgende Liste identifiziert die möglichen Fehlercodes:
Hinweise
Alle Ressourcenmanager müssen sich registrieren, um TRANSACTION_NOTIFY_PREPREPARE-, TRANSACTION_NOTIFY_PREPARE- und TRANSACTION_NOTIFY_COMMIT benachrichtigungen zu erhalten, auch wenn sie anschließend ReadOnlyEnlistment aufrufen, um eine Eintragung als schreibgeschützt zu markieren. Ressourcenmanager können TRANSACTION_NOTIFY_SINGLE_PHASE_COMMIT unterstützen, müssen aber auch die mehrstufigen Benachrichtigungen zur Vorbereitung, Vorbereitung und Commit unterstützen. Eine Liste aller Benachrichtigungen, die Ressourcen-Manager erhalten können, finden Sie unter TRANSACTION_NOTIFICATION.
Resource Manager (RM) möchten diese Funktion möglicherweise mehrmals aufrufen, um mehrere Puffer bereitzustellen, die KTM bei der Übermittlung von Benachrichtigungen verwenden kann. Die Anzahl der Aufrufe dieser Funktion hängt davon ab, wie viel Last Ihr RM trägt.
Diese Funktion muss aufgerufen werden, nachdem die Funktion SetResourceManagerCompletionPort aufgerufen wurde.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | ktmw32.h |
Bibliothek | KtmW32.lib |
DLL | KtmW32.dll |
Weitere Informationen
Kerneltransaktions-Manager-Funktionen